1、创建复制账号,并授予复制权限
CREATE USER 'fansik'@'10.%' IDENTIFIED BY 'fansik';
GRANT REPLICATION SLAVE ON *.* TO fansik@'10.%';
2、获取同步的二进制名称及坐标
登录数据库(root):
设置读锁
FLUSH TABLES WITH READ LOCK;
查看日志坐标
SHOW MASTER STATUS;
File的是下面的MASTER_LOG_FILE
Position是下面的MASTER_LOG_POS
3、导出master所有数据
mysqldump --all-databases --master-data -uroot -p > fansik.db
4、登录数据库(root)并解锁
UNLOCK TABLES;
5、从库的/etc/my.cnf至少要有如下配置,server-id不能和master一样哦
[mysqld]
server-id = 811
skip-slave-start=true
read_only=ON
relay-log=relay-bin
relay-log-index=relay-bin.index
修改配置文件后记得重启从库
6、登录从数据库,制定主数据库的信息
mysql> CHANGE MASTER TO
-> MASTER_HOST='10.2.4.1',
-> MASTER_USER='fansik',
-> MASTER_PASSWORD='fansik',
-> MASTER_LOG_FILE='mysql-bin.000006',
-> MASTER_LOG_POS=154;
7、将主库导出的信息导入到从数据库
mysql -uroot -p < fansik.db
8、登录从数据库,启动同步
start slave;
9、查看复制状态是否正常
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
如果都为yes即为配置成功