记录哈,这个需要两台服务器,每台服务器上面都要安装mysql,若是没有安装,请分别在两台服务器上面运行下面的命令
sudo apt install mysql-server
引用
Ubuntu下的mysql8.0忘记密码怎么办?
环境
Ubuntu 22.04
主机:192.168.164.134
从机:192.168.164.136
两台服务器的mysql配置文件路径:/etc/mysql/mysql.conf.d/mysqld.cnf
若是不知道在哪里运行下面的命令
find / -name mysqld.cnf
主机的配置
vim /etc/mysql/mysql.conf.d/mysqld.cnf
修改成下面的样子,注意server-id不一定要等于1,只要服务器之间的server-id是不一样的就好
若是远程连接不上mysql服务器可以把/etc/mysql/mysql.conf.d/mysqld.cnf文件中的
bind-address=127.0.0.1
mysqlx-bind-address=127.0.0.1,这两行注释掉
完成后执行在终端中执行命令
systemctl restart mysql重启mysql服务
输入mysql -uroot进入到mysql中,注意我的没有设置密码,若你有密码需要加上-p后面写的你密码
输入下面的命令
CREATE USER 'remote'@'%' IDENTIFIED BY 'remote';
GRANT REPLICATION SLAVE ON *.* TO 'remote'@'%';
FLUSH PRIVILEGES;
在mysql中输入下面命令show master status;
之后不要动主机
从机的配置
vim /etc/mysql/mysql.conf.d/mysqld.cnf
增加或注释一句server-id =2,保存退出
重启mysql服务 systemctl restart mysql
输入mysql -uroot -p你的密码进入到mysql当中
输入下面命令
stop slave;
change master to master_host='192.168.164.134',master_user='remote',master_password='remote',master_log_file='mysql-bin.000013',master_log_pos=157,get_master_public_key=1;
start slave;
show slave status\G
若show slave status\G的结果是如图片所示即可
验证:
主机用root身份登录
从机用root身份登录
在主机中新建一个数据库,看看从机中是否存在相同的,若有则配置成功,若没有找原因