主服务器 版本 5.6.23 ip: 192.168.0.25 端口3308
从服务器 版本 5.6.21 ip: 随便 端口: 随便
主服务器配置:
#保证id唯一,和从服务器不能重复
server-id=1
#开启binlog,文件名为master-bin
log-bin="master-bin"
log-bin-index="master-bin.index"
#自动清空日志天数
expire_logs_days = 10
#选择要同步的库,如果不设置,默认全部同步
binlog-do-db="数据库名" (你要备份的数据库)
binlog-ignore-db = "数据库名" (你不需要备份的数据库)
create user 'bakuser'@'%' identified by '123456';
#授权用户bakuser只能从192.168.21.168这个IP访问主服务器上面的数据库,并且只具有数据库备份的权限
grant replication slave on *.* to 'bakuser'@'192.168.21.168' identified by '123456' with grant option;
从服务器配置:
#从服务器不要开启binlog
#保证id唯一,和主服务器不能重复
server-id=2
配置完成后,打开mysql命令行程序,
#设置主服务器连接信息
mysql > show slave status\G
检查主从同步,如果您看到Slave_IO_Running和Slave_SQL_Running均为Yes,则主从复制连接正常。
如果遇到错误可以:
mysql > stop slave;
mysql > set global sql_slave_skip_counter =1 ; (让mysql跳过一次错误,继续执行)
mysql > start slave;
其它事项:
slave重置
mysql >reset slave;
查看主库状态,在主库上
mysql > show master status\G
*************************** 1. row ***************************
File: master-bin.000001
Position: 120
Binlog_Do_DB: fad-xian
Binlog_Ignore_DB:
查到主库的file和pos后,在从库做如下设置
change master to master_host='192.168.0.25',master_port=3308,master_user='bakuser',master_password='123456',
master_log_file = 'mysqld-bin.000001',master_log_pos=3260;