在网上查了很多的主从复制的配置,发现坑也挺多的,现在记录一下,少踩坑
主数据库:192.168.1.1
从数据库:192.168.1.2
注意事项
确保主数据库的mysql能够给外网访问,也就是使用Navicat等软件能够连接的上才行。如果使用宝塔就要到端口那里放行3306端口
主数据库配置:
1. 创建一个用户
GRANT REPLICATION SLAVE,FILE ON *.* TO 'mstest'@'192.168.1.2' IDENTIFIED BY '123456';
192.168.1.2:是运行使用该用户的ip地址
mstest:是新创建的用户名
123456:是新创建的用户名的密码
2. 修改mysql的配置文件,my.cnf(window系统时my.ini)
server-id=1
binlog-do-db=czc #这个是需要同步的数据库 ,czc是一个数据库,自行先创建
完成后输入命令show master status查看一下是否成功
从数据库配置:
如果mysql的版本大于5.5
打开mysql.in添加下面值
server-id=2
master-host=192.168.1.1 //主数据库的ip
master-user=mstest //第一步创建账号的用户名
master-password=123456 //第一步创建账号的密码
master-port=3306
master-connect-retry=60
replicate-do-db=czc //要同步的mstest数据库,要同步多个数据库,就多加几个replicate-db-db=数据库名
mysql的版本小于5.5
打开mysql.ini添加一个server_id,随便写一个不重复的id
因为小于5.5的不能使用直接配置的方法,只能采用命令行的方式配置
CHANGE MASTER TO MASTER_HOST='118.25.2437.342',MASTER_PORT=3306,MASTER_USER='mstest',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000015',MASTER_LOG_POS=606;
这里的参数都是对照主数据库的信息填写的
slave start;
show slave status\G;
看这几项是否出现,出现表示成功了。可自行在主数据库里面添加修改数据测试
有疑问欢迎留言