欢迎投稿

今日深度:

MySQL主从库过滤复制配置教程,

MySQL主从库过滤复制配置教程,


搭建MySQL主从库过滤复制,备份指定数据库,有利于数据库的管理。这个教程在同个服务器上同个MySQL数据库环境,搭建不同实例的数据库。此配置教程与不同服务器配置MySQL方法时一致。

依据不同MySQL实例来配置不同端口号,以端口号命名方式来命名MySQL实例,主库为3307,从库为3309。

将3309开启过滤复制,只复制world和abc数据库数据。

1. 修改配置文件:

vim /data/3309/my.cnf
replicate_do_db=world
replicate_do_db=abc

2. 关掉3309库  :

[root@mv171 3309]# mysqladmin -S /data/3309/mysql.sock shutdown

3. 再启动3309库 :  

[root@mv171 3309]# mysqld_safe --defaults-file=/data/3309/my.cnf &

4. 构建主从环境:备份主库数据(3307)并恢复到3309

备份3307主库数据

 [root@mv171 3307]# mysqldump -S /data/3307/mysql.sock -A --master-data=2 --single-transaction >/tmp/full.sql

5. 进入3309库:

[root@mv171 3309]# mysql -S /data/3309/mysql.sock

5.1 先关闭二进制日志写入功能:

 mysql> set sql_log_bin=0;

5.2 恢复数据:

mysql> source /tmp/full.sql

5.3 查看主库3307的起始二进制文件和位置号:

[root@mv171 ~]# head -30 /tmp/full.sql
......
-- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=2039;
#主库在用的二进制日志文件为mysql-bin.000001,位置号为2039
......

6. 开启主从配置:

CHANGE MASTER TO
  MASTER_HOST='192.168.1.171',
  MASTER_USER='repl',
  MASTER_PASSWORD='666888',
  MASTER_PORT=3307,
  MASTER_LOG_FILE='mysql-bin.000001',
  MASTER_LOG_POS=2039,
  MASTER_CONNECT_RETRY=10;

7. 开启主从:

mysql> start slave;

8. 主从配置已完成,查看从库状态:show slave status \G;

mysql> show slave status \G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.1.171
                  Master_User: repl
                  Master_Port: 3307
                Connect_Retry: 10
              Master_Log_File: mysql-bin.000001
          Read_Master_Log_Pos: 2039
               Relay_Log_File: mv171-relay-bin.000002
                Relay_Log_Pos: 283
        Relay_Master_Log_File: mysql-bin.000001
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB: world,abc

这时后可以查看Replicate_Do_DB:world,abc。

  • 最终过滤主从关系配置完成,在配置完成过滤主从复制之前主库没有world,abc数据库,在主库新建这两个数据库时,这两个数据库是可以同步到从库;但如果新建其他名称数据库,比如efg数据,是不会同步到从库中来。
  •  另外注意主从过滤复制的写法,在配置文件中不要将两个数据库通过写在一个命令参数,比如replicate_do_db=world,abc,这么写mysql就认定过滤数据库名是“world,abc”,两个库必须分开写,不要以为逗号或分割符号表示分开两个库,这样做法是错误的。

到此这篇关于MySQL主从库过滤复制配置教程的文章就介绍到这了,更多相关MySQL主从库过滤复制内容请搜索PHP之友以前的文章或继续浏览下面的相关文章希望大家以后多多支持PHP之友!

您可能感兴趣的文章:
  • MySQL 搭建双主复制服务并通过 HAProxy 负载均衡的过程详解
  • MySQL快速禁用账户登入及如何复制/复用账户密码(最新推荐)
  • MySQL主从复制延时问题的解决方案
  • Mysql中的多级复制方式

www.htsjk.Com true http://www.htsjk.com/Mysql/47827.html NewsArticle MySQL主从库过滤复制配置教程, 搭建MySQL主从库过滤复制,备份指定数据库,有利于数据库的管理。这个教程在同个服务器上同个MySQL数据库环境,搭建不同实例的数据库。此配置教程与...
评论暂时关闭