1.环境说明:DBmaster:172.16.1.55
DBslave:172.16.1.56
2.Server-id配置(/etc/f):
主库配置server-id要比从库的ID小。
主库ID设置:Server-id=55
从库ID设置:Server-id=56
3.日志格式设置(/etc/f):
log-bin=mysql-bin(主库、从库都设置)
4.主库授权从库的权限设置:
grantreplicationslaveon*.*to‘slave’@’172.16.1.56’identifiedby‘P@ssw0rdskycloud’;
flushprivileges;
5.主库设置要进行主从同步的数据库和不需要主从同步的数据库:
使用binlog-do-db=XXX手动指定需要同步的数据库;
使用binlog-ignore-db=XXX手动指定不需要同步的数据库;
vi/etc/f:
[mysqld]
log-bin=mysql-bin
server-id=55
binlog-do-db=test
binlog-do-db=information_schema
binlog-do-db=performance_schema
binlog-ignore-db=mysql
6.从库设置要从主库同步的数据库和不需要从主库同步的数据库:
使用replicate-do-db=XXX手动指定需要同步的数据库;
使用replicate-ignore-db=XXX手动指定不需要同步的数据库;
vi/etc/f:
[mysqld]
log-bin=mysql-bin
server-id=56
replicate-do-db=test
replicate-do-db=information_schema
replicate-do-db=performance_schema
replicate-ignore-db=mysql
7.主库和从库分别重启mysql数据库。
servicemysqlrestart
8.主库上执行:
showmasterstatus;
记录下mysql-bin的文件和位置。
比如看到的位置是:mysql-bin.000014107
9.从库上先停止slave状态:
slavestop;
10.从库上手动执行数据同步:
11.打开从库的slave机制:
slavestart;
12.查看slaveslavestatus\G;
13.测试mysql主从状态:
在主库上创建表,然后到从库上使用相对应的数据库执行showtables;语句。
在主库数据表中插入数据,然后从从库中执行select查询语句,查看同步过来的数据表中的数据记录。
createtablelinxi(idintnotnullprimarykey,namechar(20));
insertintolinxivalues(1,’lutaoxu’);
从库上执行查询语句:
usetest;
select*fromlinxi;