千家信息网

如何使用replicate-rewrite-db实现复制映射以及Replicate_Wild_Do_Table实现复制过滤

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇文章给大家分享的是有关如何使用replicate-rewrite-db实现复制映射以及Replicate_Wild_Do_Table实现复制过滤,小编觉得挺实用的,因此分享给大家学习,希望大家阅读
千家信息网最后更新 2026年11月02日如何使用replicate-rewrite-db实现复制映射以及Replicate_Wild_Do_Table实现复制过滤

本篇文章给大家分享的是有关如何使用replicate-rewrite-db实现复制映射以及Replicate_Wild_Do_Table实现复制过滤,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

node1和node2为两台不同业务的MySQL服务器。

业务方有个需求,需要将node1上的employees库的departments 、dept_manager 这2张表同步到 node2 的 hellodb 库下面。

node1的employee 里面有如下6张表:

employees > show tables;

+---------------------+

| Tables_in_employees |

+---------------------+

| departments |

| dept_manager |

| dept_emp |

| employees |

| salaries |

| titles |

+---------------------+

node2只要复制它的 departments 、dept_manager 表到hellodb库里面。

实验了下,整理好的详细操作步骤如下:

1、在node1导出数据并传送到node2去:

mysqldump -uroot -pAbcd@1234 -q --single-transaction employees departments dept_manager --master-data=2 > employees.sql # 注意导出的时候不要加-B

scp employees.sql node2:/root/

2、然后到node2,导入刚才的数据

mysql -uroot -pAbcd@1234 hellodb

source /root/employees.sql

show tables;

+-------------------+

| Tables_in_hellodb |

+-------------------+

| departments |

| dept_manager |

| students |

| teachers |

+-------------------+

4 rows in set (0.00 sec)

可以看到2个表导入进来了。

head -35 /root/employees.sql , 记下change master to 的位置 ,例如

-- CHANGE MASTER TO MASTER_LOG_FILE='mysql.000021', MASTER_LOG_POS=234757251;

3、停node2,改配置文件

/etc/int.d/mysql stop

修改node2 配置文件,加上下面3行:

replicate-rewrite-db = employees -> hellodb

replicate-wild-do-table=hellodb.departments

replicate-wild-do-table=hellodb.dept_manager

/etc/int.d/mysql start

4、配置主从关系

CHANGE MASTER TO

MASTER_HOST='192.168.2.171',

MASTER_USER='rpl',

MASTER_PASSWORD='Abcd@1234',

MASTER_LOG_FILE='mysql.000021',

MASTER_LOG_POS=234757251;

show slave status \G

[(none)] > show slave status\G

*************************** 1. row ***************************

Slave_IO_State:

Master_Host: 192.168.2.171

Master_User: rpl

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql.000021

Read_Master_Log_Pos: 234757251

Relay_Log_File: t72-relay-bin.000001

Relay_Log_Pos: 4

Relay_Master_Log_File: mysql.000021

Slave_IO_Running: No

Slave_SQL_Running: No

Replicate_Do_DB:

Replicate_Ignore_DB:

Replicate_Do_Table:

Replicate_Ignore_Table:

Replicate_Wild_Do_Table: hellodb.departments,hellodb.dept_manager

Replicate_Wild_Ignore_Table:

Last_Errno: 0

Last_Error:

Skip_Counter: 0

Exec_Master_Log_Pos: 234757251

Relay_Log_Space: 154

Until_Condition: None

Until_Log_File:

Until_Log_Pos: 0

Master_SSL_Allowed: No

Master_SSL_CA_File:

Master_SSL_CA_Path:

Master_SSL_Cert:

Master_SSL_Cipher:

Master_SSL_Key:

Seconds_Behind_Master: NULL

Master_SSL_Verify_Server_Cert: No

Last_IO_Errno: 0

Last_IO_Error:

Last_SQL_Errno: 0

Last_SQL_Error:

Replicate_Ignore_Server_Ids:

Master_Server_Id: 0

Master_UUID:

Master_Info_File: /data/mysql/master.info

SQL_Delay: 0

SQL_Remaining_Delay: NULL

Slave_SQL_Running_State:

Master_Retry_Count: 86400

Master_Bind:

Last_IO_Error_Timestamp:

Last_SQL_Error_Timestamp:

Master_SSL_Crl:

Master_SSL_Crlpath:

Retrieved_Gtid_Set:

Executed_Gtid_Set:

Auto_Position: 0

Replicate_Rewrite_DB: (employees,hellodb)

Channel_Name:

Master_TLS_Version:

1 row in set (0.00 sec)

start slave;

show slave status \G

[(none)] > show slave status\G

*************************** 1. row ***************************

Slave_IO_State: Waiting for master to send event

Master_Host: 192.168.2.171

Master_User: rpl

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql.000021

Read_Master_Log_Pos: 234757251

Relay_Log_File: t72-relay-bin.000002

Relay_Log_Pos: 316

Relay_Master_Log_File: mysql.000021

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Replicate_Do_DB:

Replicate_Ignore_DB:

Replicate_Do_Table:

Replicate_Ignore_Table:

Replicate_Wild_Do_Table: hellodb.departments,hellodb.dept_manager

Replicate_Wild_Ignore_Table:

Last_Errno: 0

Last_Error:

Skip_Counter: 0

Exec_Master_Log_Pos: 234757251

Relay_Log_Space: 521

Until_Condition: None

Until_Log_File:

Until_Log_Pos: 0

Master_SSL_Allowed: No

Master_SSL_CA_File:

Master_SSL_CA_Path:

Master_SSL_Cert:

Master_SSL_Cipher:

Master_SSL_Key:

Seconds_Behind_Master: 0

Master_SSL_Verify_Server_Cert: No

Last_IO_Errno: 0

Last_IO_Error:

Last_SQL_Errno: 0

Last_SQL_Error:

Replicate_Ignore_Server_Ids:

Master_Server_Id: 71

Master_UUID: 02d27620-1d8c-11e7-b028-000c295b7c01

Master_Info_File: /data/mysql/master.info

SQL_Delay: 0

SQL_Remaining_Delay: NULL

Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates

Master_Retry_Count: 86400

Master_Bind:

Last_IO_Error_Timestamp:

Last_SQL_Error_Timestamp:

Master_SSL_Crl:

Master_SSL_Crlpath:

Retrieved_Gtid_Set:

Executed_Gtid_Set:

Auto_Position: 0

Replicate_Rewrite_DB: (employees,hellodb)

Channel_Name:

Master_TLS_Version:

1 row in set (0.00 sec)

5、测试

在node1上测试下吧。

以上就是如何使用replicate-rewrite-db实现复制映射以及Replicate_Wild_Do_Table实现复制过滤,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

配置 业务 数据 文件 更多 知识 篇文章 测试 不同 实用 主从 位置 就是 工作会 文章 时候 服务器 步骤 看吧 知识点 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 有格互联网科技 华服互联网科技靠谱吗 金融科技还是互联网 华中科技大学互联网 互联网科技logo设计 广州善班互联网科技 科技互联网创业计划书 互联网系的金融科技公司 武汉健翔互联网络科技有限公司 青岛科技大学互联网大赛研究生 互联网科技扶贫时间 浙南科技城互联网大厦建设工程 中国互联网公司排名锤子科技 高科技互联网套路 黑科技 体验场景 互联网大会 杭州披云加互联网科技有限公司 卡尔迅互联网科技有限公司 神州科技互联网有限公司 上海乐五互联网科技有限公司 中国新注册互联网科技 南京欣网互联网络科技有限公司 苏州找大状互联网科技有限公司 云信互联网科技有限公司 A股互联网金融科技公司 今日互联网科技 华服互联网科技官网 重庆互联网医院沙龙医盟信息科技 南博望互联网科技有限公司 城市宝互联网科技有限公司 互联网大会出现的黑科技
0