主服务器IP地址192.168.1.7
从服务器IP地址192.168.1.10
一主一从
一、修改主服务器的配置文件
vim /etc/my.cnf
[mysqld] server-id=1 log_bin=/data/logbin/mysql-bin
server-id=1 在主服务器上写上server id 等于1
log_bin=/data/logbin/mysql-bin 表示开启二进制
二、、在主服务上创建用户
MariaDB [(none)]> grant replication slave on *.* to 'alex'@'192.168.1.%' identified by 'centos';
主服务上创建用户alex ,密码为centos 可以通过192。168.1这个网段来访问
三、修改从服务器配置文件
vim /etc/my.cnf [mysqld] server-id=2
read-only
此处的read-only可以加也可以不加,建议加
四、主服务器上查看二进制日志文件的位置
MariaDB [(none)]> show master logs; mysql-bin.000004 | 397|
从这个位置开始同步的,前面的二进制日志文件就不管了
五、查看从节点的状态,目前还不是从节点服务器,所以现在是空的
MariaDB [(none)]> show slave status\G
从服务器上执行这个命令,IP地址为刚给的主服务器地址,用户名为alex,密码是centos,
日志位置就是刚刚查看到的位置(记不得这串可以通过help CHANGE MASTER TO查看帮助,里面有模板 )
CHANGE MASTER TO MASTER_HOST='192.168.1.7', MASTER_USER='alex', MASTER_PASSWORD='centos', MASTER_PORT=3306, MASTER_LOG_FILE='master2-bin.000004', MASTER_LOG_POS=397;
六、查看从服务器状态
show slave status\G 可以看到这两个线程 Slave_IO_Running: No Slave_SQL_Running: No 服务器还没开,所以这两个线程还没开启 ------------------------- Seconds_Behind_Master: NULL 主服务器和从服务器的同步延长时间,以秒为单位
七、开启线程
start slave;
开启这两个线程 Slave_IO_Running ,Slave_SQL_Running
show slave status\G 在从服务器上可以看到这两个线程没有启动成功注释:如电脑的UUID相同也会导致主从服务器起不来
Slave_IO_Running: no 当为no的时候,可以修改下面这串
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000006', MASTER_LOG_POS=245;
按照自己的日志位置修改。