主服务器:192.168.0.1
从服务器:1192.168.0.2
一、首先锁定主服务器表为只读
#登录数据库:
mysql -uroot -proot
#锁定表:
flush tables with read lock
二、通过navicat数据传输同步主服务器(192.168.0.1)与从服务器(1192.168.0.2)数据库,保证两遍的库一致
三、 为从服务器(1192.168.0.2)在主服务器(192.168.0.1)建立备份账户
#登录主服务器数据库:
mysql -uroot -proot
#创建账户并授权:
grant replication salve on *.* to 'beifen'@'1192.168.0.2' indentified by '123456';
#刷新:
flush privileges;
#测试账户是否匹配成功,登录从服务器(1192.168.0.2)
#登录命令
mysql -ubeifen -p123456 -h 192.168.0.1
#登录成功则表示账号已建立成功
四、修改主服务器(192.168.0.1)mysql 的配置文件 my.cnf
- server-id = 1 //唯一的id 默认便是1
- log-bin = mysql-bin //日志名称
- binlog-do-db = zjj //列出所有需要备份的数据库名称,多个数据库可以用“,”分隔,也可以写多个binlog-do-db
- binlog-ignore-db = mysql //列出所有不要备份的数据库名称
- 重启数据库
#停止
service mysqld stop
#启动
service mysqld start
- 查看配置的状态:
show master status\G #主要记录两个值 File 与 Position的值
File = mysql-bin.000007
Position = 1607
五、配置从服务器(1192.168.0.2)
- 修改配置文件
server-id = 2 //唯一的
log-bin = mysql-bin
repicate-do-db = zjj //与主服务器的binlog-do-db配置一致
repicate-ignore-db = mysql // 比主服务器多添加两个 infomation_schame,performance_schame - 重启数据库
service mysqld stop
service mysqld start
*登录数据库
mysql -uroot -proot
#停止服务线程:
stop slave
#指向主服务器:
change master to master_host = ‘192.168.0.1’,master_user='beifen',master_passowrd='123456',master_log_file=mysql-bin.000007,master_log_pos=1607;
master_log_file 与 master_log_pos 根据主服务器状态配置
查看配置语句
#查看主服务器
show master status\G
#查看从服务器
show slave status\G
#启动线程:
start slave
六、主服务器解除锁表
#登录服务器
mysql -uroot -proot -h192.168.0.1
unlock tables;
七、在主服务器任意一个备份库的任意表添加数据,在从服务器查看是否同步。 到此配置完成