不同服务器之间实现同步:
1. 确保主从服务器的mysql版本一致
2. 创建一个复制使用的账户rep1并授权
mysql> grant replication slave on "*"."*" to 'repl'@'192.168.1.101' identified by '123'
3. 修改主服务器配置文件,开启binlog,并设置server-id的值
[mysqld1]
port = 3306
log-bin = /usr/local/var/mysql1/mysql-bin
server-id = 1
4. 在主服务器上设置读锁定有效,为了确保没有数据库操作,以便获得一致性的快照
flush tables with read lock
5. 查询主服务器上当前二进制日志名和偏移值,为了在从服务器启动以后从这个点开始数据库的恢复
mysql> show master status;
6. 停止主服务器更新操作,需要生成数据库的备份,可以通过mysqldump导出数据或者使用ibackup进行数据>库的备份,如果主数据库停止,可以直接cp数据文件到从实践看服务器上
7. 主库备份完成之后,恢复读写操作
mysql> unlock tables;
8. 修改从库的配置文件
[mysqld]
server-id=2
9. 启动从数据库
mysqld_safe
10. 对从库做相应的设置:
mysql> stop slave;
change master to master_host='127.0.0.1' master-user='repl' master-passwor='123' master-log-file='mysql-bin.000001' master-log-pos=120
11. 在从库启动slave线程
mysql> start slave;
12. 在从库执行 show slave status\G;查看从库的状态
也可以执行show processlist\G; 查看从服务器的进程状态
13. 测试主从是否可以正确同步