mysql主从同步指定表
时间: 2023-07-04 09:18:22 浏览: 123
要实现 MySQL 主从同步指定表,可以通过以下步骤进行配置:
1. 在主库上创建一个同步帐号,并且授权 slave 连接主库的权限,例如:
```
GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY 'slave_password';
```
2. 配置主库的 `my.cnf` 文件,开启二进制日志和指定需要同步的表,例如:
```
server-id=1
log-bin=mysql-bin
binlog-do-db=db_name
binlog-ignore-db=mysql
```
其中,`db_name` 是需要同步的数据库名称,`mysql` 是不需要同步的系统数据库。
3. 在从库上配置 `my.cnf` 文件,指定需要同步的表,例如:
```
server-id=2
replicate-do-db=db_name
replicate-ignore-db=mysql
```
其中,`db_name` 是需要同步的数据库名称,`mysql` 是不需要同步的系统数据库。
4. 在从库上执行以下 SQL 语句,开始同步数据:
```
CHANGE MASTER TO MASTER_HOST='master_host', MASTER_USER='slave_user', MASTER_PASSWORD='slave_password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=123456;
START SLAVE;
```
其中,`master_host` 是主库的 IP 地址或主机名,`slave_user` 和 `slave_password` 是在主库上创建的同步帐号的用户名和密码,`mysql-bin.000001` 和 `123456` 分别是主库上的二进制日志文件名和位置。
这样,从库就可以开始同步主库的指定表数据了。需要注意的是,如果需要同步多个表,则在 `binlog-do-db` 和 `replicate-do-db` 参数中都需要指定这些表所在的数据库名称。
阅读全文