mysql主从数据库配置
主:192.168.47.101
从:192.168.47.102
配置主数据库
vi /etc/my.cnf [mysqld] server-id=101 #[必须]服务器唯一ID log-bin=master-bin #[必须]启用二进制日志 log-bin-index=master-bin.index
保存配置重启mysql
/etc/init.d/mysqld restart
进入数据库,新建一个用户用来同步数据
mysql -uroot -p密码
GRANT REPLICATION SLAVE ON *.* TO '用户名(test)'@'从服务器ip' IDENTIFIED BY '密码';
FLUSH PRIVILEGES;
配置从数据库
[mysqld] server-id=102 #[必须]服务器唯一ID,默认是1,一般取IP最后一段 log-bin=slave-bin #[必须]启用二进制日志 log-bin-index=slave-bin.index
进入从数据库
CHANGE MASTER TO MASTER_HOST='192.168.47.101', MASTER_PORT=3306,MASTER_USER='用户名(test)', MASTER_PASSWORD='密码', MASTER_LOG_FILE='mysql-bin.000007', # 登陆主服务器 show master status; 查询 取File列值 参考下图 MASTER_LOG_POS=154; # 登陆主服务器 show master status; 查询 取Position列值 参考下图
start slave; #启动从服务器复制功能
show slave status\G #如下图就算成功了
如有错误,请自行排查mysql日志
/data/mysql/mysql-error.log
todo:因为自己的测试机是虚拟机克隆的,所以两个mysql的uuid会是相同的,主从同步也不会成功
# 修改mysql的uuid vim /data/mysql/auto.cnf
测试
主服务器添加一条数据
从服务器查询