同步`AAA`数据库下的`purse`表到`BBB`数据库下的同名表

需求:同步192.168.1.153服务器中weihai_purse_member数据库下的purse_member_pappay_con表到192.168.1.100服务器中weihai_citycode数据库下的同名表。

MySQL 主从复制设置实施步骤:

  1. 主服务器配置(192.168.1.153):

    • 修改my.cnfmy.ini:
      [mysqld]
      log-bin=mysql-bin  # 开启二进制日志
      server-id=1        # 确保每个MySQL服务器的id都是唯一的
      binlog-do-db=weihai_purse_member #指定要同步的数据库
      
    • 重启MySQL服务。
    • 创建复制用户:
      GRANT REPLICATION SLAVE ON *.* TO 'replica'@'192.168.1.100' IDENTIFIED BY 'P@ssw0rd';
      FLUSH PRIVILEGES;
      
    • 获取二进制日志位置:
      SHOW MASTER STATUS;
      
      +------------------+----------+---------------------+------------------+-------------------+
      | File             | Position | Binlog_Do_DB        | Binlog_Ignore_DB | Executed_Gtid_Set |
      +------------------+----------+---------------------+------------------+-------------------+
      | mysql-bin.000002 |     1043 | weihai_purse_member |                  |                   |
      +------------------+----------+---------------------+------------------+-------------------+
      1 row in set (0.00 sec)
      
  2. 从服务器配置(192.168.1.100):

    • 修改my.cnfmy.ini:

      [mysqld]
      server-id=2  #确保每个MySQL服务器的id都是唯一的
      replicate-rewrite-db=weihai_purse_member->weihai_citycode  #重写数据库名称
      replicate-do-table=weihai_citycode.purse_member_pappay_con #指定复制的表
      
    • 重启MySQL服务。

    • 在从服务器上配置主服务器信息:

      CHANGE MASTER TO 
      MASTER_HOST='192.168.1.153', 
      MASTER_USER='replica', 
      MASTER_PASSWORD='P@ssw0rd', 
      MASTER_LOG_FILE='mysql-bin.000002', 
      MASTER_LOG_POS=1043;
      
    • 开始复制进程:

      START SLAVE;
      
    • 检查复制状态:

      SHOW SLAVE STATUS\G;
      
  3. 监控和维护:

    • 定期检查从服务器的复制状态,确保数据同步。
    • 如果出现问题或延迟,查找原因并解决。
    • 定期备份数据。

关键变动:

  • 使用了replicate-rewrite-db来重新指定目标数据库的名称,以确保数据可以同步到weihai_citycode数据库。
  • 使用了replicate-do-table来确保只有purse_member_pappay_con这个表被复制。

请注意,这些步骤仍然是基本的,可能需要根据您的实际情境进一步调整。

你可能感兴趣的:(linux)