一、主服务器
步骤1、更改 /etc/my.cnf,在 [mysqld] 下添加
log-in=mysql-bin
server-id=1 #可以设成 ip 的最后一位
步骤2、在主服务器上为从服务器创造账号
grant replication slave on *.* to 'repl'@'从服务器ip' identified by '密码';
步骤3、数据库加锁
flush tables with read lock;
步骤4、查看二进制日志信息
show master status #为了记录file和position
步骤5、导出数据库
mysqldump -uroot -p'密码' --all-databases(或某个数据库) > xx.sql
步骤6、对数据库解锁
unlock tables
二、从服务器
如果是虚拟机复制的服务器,记住修改 mysql/data/ 下的 auto.cnf 中的 UUID
步骤1、更改 /etc/my.cnf,在 [mysqld] 下添加
server-id=2
步骤2、导入主服务器的数据
mysql -uroot -p'密码' < xx.sql
步骤3、配置同步参数
change master to (注意,to后面后面有个空格)
master_port=3306,
master_host='主.ip',
master_user='repl',
master_password='密码',
master_log_file='主服务器中的file',
master_log_position=主服务器中的position,不要引号
步骤4、start slave
步骤5、show slave status \G
如果有下面两行就表示成功了
Slave_IO_Running:Yes
Slave_SQL_Running:Yes