在云服务器上部署mysql

实验要求 1.在云服务器上启动两个实例(server和client),并实现在两个实例之间进行SSH免密登录。 2.在两个实例上安装MySQL,在server上创建数据库和用户,并在Client上远程连接Server的数据库。 实验步骤 购买两个2核4GB的实例,操作系统为ubuntu20.04 软件更新和安装 sudo apt-get update sudo apt-get install vim sudo apt-get install ssh sudo spt-get install mysql-server SSH免密登录 在clinet端生成密钥,再把公钥添加到本地已认证的密钥中就可以实现本机对自己的免密登录。再把client上面的私钥公钥和已认证的密钥发送到server上,这样就能实现他们的相互免密登录。 ssh-keygen -t rsa -C yuanhao cd ~/.ssh cat id_rsa.pub > authorized_keys scp id_rsa ubuntu@43.132.187.176:~/.ssh/id_rsa scp id_rsa.pub ubuntu@43.132.187.176:~/.ssh/id_rsa.pub scp authorized_keys ubuntu@43.132.187.176:~/.ssh/authorized_keys 之后可以使用cat对authorized_keys进行检查。 client连接远程数据库 在server上安装mysql之后对mysql的配置文件进行修改,把绑定的端口从127.0.0.1改为0.0.0.0,以便于来自client的用户进行访问。 之后在server的mysql中创建用户并赋予权限。 在server上创建一个数据库db1,然后在client上实现对server的mysql登录,这需要在服务器的安全组里放开3306端口。然后检查是否登陆成功,并且能够看到之前创建的db1.

November 30, 2023 · 1 min · 48 words · sirius1y

mysql用户被锁定

问题描述 在某一天正常输入密码进入mysql的过程中出现了这样的问题: yoho@~$ mysql -u root -p Enter password: ERROR 3118 (HY000): Access denied for user 'root'@'localhost'. Account is locked. 问题分析 查证一番之后就是账户被锁定了,在mysql.user中的用户的account_locked属性写成了N,正常应该是Y; 现在的问题就是需要进入到mysql中对这个值进行修改。。 问题是平时个人电脑上我就是用的root,其他也没有什么用户了,我就进不去mysql修改不料。 解决方法 一番摸索之后找到了一个方法,绕过权限检查机制登入mysql然后进行修改即可。 绕开权限检查机制的过程如下: 进入/etc/mysql/mysql.conf.d/下,有mysql.cnf和mysqld.cnf两个文件 你看你自己电脑上的东西是写在哪个文件上的,我的电脑上基本就是mysql.cnf是空的,配置都在mysqld.cnf上 对你要修改的文件先用sudo cp命令进行一个备份,再进行修改,防止发生意外 打开文件,在[mysqld]下添加一行配置:skip-grant-tables 保存之后重新启动mysql服务,sudo ststemctl restart mysql 再用mysql -u root 就可以绕过权限直接登陆了 进入之后再对mysql.user表中的相应用户的account_locked字段的值进行修改 最后再将mysqld.cnf改回来重启mysql服务就可以了

October 10, 2023 · 1 min · 42 words · sirius1y