一、环境以及架构
| 服务系统 | IP地址 | mysql版本 |
|---|---|---|
| linux | 1.1.1.10 | 8.0.26 |
| linux | 1.1.1.11 | 8.0.26 |
二、在1.1.1.10服务器安装mysql并创建用户
创建mysql
docker run -d --restart=always -p 13308:3306 --privileged=true -v /home/docker/mysql/mysql8_1/log:/var/log/mysql -v /home/docker/mysql/mysql8_1/data:/var/lib/mysql -v /home/docker/mysql/mysql8_1/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root -e TZ=Asia/Shanghai --name lcytest8 mysql:8.0.26
查看容器ID
docker ps
进入容器中
docker exec -it 容器ID /bin/bash
修改mysql的配置文件
cd /etc/mysql/
如果没有vim命令,需要安装,安装步骤:
apt-get update;
apt-get install vim;
修改mysql的配置文件,将binlog打开
vim my.cnf
在/etc/my.cnf文件中的“[mysqld]”段添加如下内容:
server-id = 1
log-bin=mysql-bin
relay-log = mysql-relay-bin
replicate-wild-ignore-table=mysql.%
replicate-wild-ignore-table=test.%
replicate-wild-ignore-table=information_schema.%
登录mysql
mysql -uroot -proot
创建远程同步用户
create user 'lcy2'@'1.1.1.%' identified by 'lcy000000';
GRANT ALL PRIVILEGES ON . TO 'lcy2'@'1.1.1.%' WITH GRANT OPTION;
三、 以上操作在 1.1.1.11 也操作一遍
四、创建主从同步
查看binlog的文件名以及位置
分别在 1.1.1.10 和 1.1.1.11服务器上,然后记下来。
在1.1.1.10数据库执行以下操作
change master to master_host='1.1.1.11',master_port=13308,master_user='lcy2',master_password='lcy000000',master_log_file='mysql-bin.000002',master_log_pos=2950;
启动slave
start slave;
查看slave是否启动
show slave status \G
提示以上内容即启动成功了
在1.1.1.11上数据库上执行以下操作
change master to master_host='1.1.1.10',master_port=13308,master_user='lcy2',master_password='lcy000000',master_log_file='mysql-bin.000002',master_log_pos=2950;
启动slave
start slave;
查看slave是否启动
show slave status \G