假设有以下主机
- 主机1: 192.168.1.100 (Master)
- 主机2: 192.168.1.106 (Slave)
第一步 首先配置主服务器
打开/etc/my.cnf
Windows下为my.ini
- 在文件中添加
log-bin=mysql-bin
server-id=2 //id主从服务器不能重复
binlog-ignore-db=information_schema //需要忽略的库
binlog-ignore-db=mysql
...
binlog-do-db=happyfarm //需要同步的库
- 重启mysql服务
- 在命令行中为从服务器配置File权限 和 REPLICATION SLAVE权限
mysql> GRANT FILE ON *.* TO 'root'@'192.168.1.106' IDENTIFIED BY 'mysql password';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'root'@'192.168.1.106' IDENTIFIED BY 'mysql password';
mysql> FLUSH PRIVILEGES
- 重启服务,查看配置情况
mysql> show master status;
第二步 配置从服务器
打开/etc/my.cnf
Windows下为my.ini
- 在文件中添加
log-bin=mysql-bin
server-id=3 //id不能重复
binlog-ignore-db=information_schema //需要忽略的库
binlog-ignore-db=mysql
replicate-do-db=ufind_db //需要同步的库
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
slave-net-timeout=60
- 如果是5.6以下版本数据库可在my文件中追加以下配置
master-host=192.168.1.100 #Master的主机IP
master-user=root
master-password=mysql password #Master的MySQL密码
- 如果5.6以上版本数据库需到命令行中执行以下命令
mysql> stop slave; #关闭Slave
mysql> change master to master_host='192.168.1.100',master_user='root',master_password='123456',master_log_file='mysql-bin.000003' (File), master_log_pos=154 (Position);
mysql> start slave; #开启Slave
- 查看配置情况
show slave status;