17.5 測試主從同步

主服務器上

binlog-do-db=            //僅同步指定的庫(多個庫,能夠用「 , 」逗號分隔)——>英文的逗號 , 
binlog-ignore-db=     //忽略指定庫

從服務器上

replicate_do_db=          //僅同步指定的庫
replicate_ignore_db=     //忽略指定庫
replicate_do_table=         //僅同步指定的表
replicate_ignore_table=    //忽略指定表,
    - 例如:有一個臨時表,寫的數據很是快,數據也大,天天都須要刪除這時就能夠更新刪除這個,那麼就不須要天天去作同步
 replicate_wild_do_table=   //如aming.%, 支持通配符%  指定同步靠譜的匹配  同步表   
replicate_wild_ignore_table=   //如aming.%, 支持通配符%  指定同步靠譜的匹配  忽略表
  • 進行從服務器的配置時儘可能使用參數「replicate_wild_」,使匹配更精確,提高使用性能。

測試主從

  • 主上 mysql -uroot aming
  • select count(*) from db;
  • truncate table db;
  • 到從上 mysql -uroot aming
  • select count(*) from db;
  • 主上繼續drop table db;
  • 從上查看db表
  1. 在主上機器,進入到mysql
[root@hanfeng ~]# mysql -uroot -phanfeng
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5562
Server version: 5.6.35-log MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
  1. 進入到zrlog庫裏面
mysql> use zrlog;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql>
  1. 查看錶,有幾個表
  • show tables;
mysql> show tables;
+-----------------+
| Tables_in_zrlog |
+-----------------+
| comment         |
| link            |
| log             |
| lognav          |
| plugin          |
| tag             |
| type            |
| user            |
| website         |
+-----------------+
9 rows in set (0.00 sec)

mysql>
  1. 查看錶有多少行,會看到website裏面有9行數據
  • select count(*) from website;
mysql> select count(*) from website;
+----------+
| count(*) |
+----------+
|        9 |
+----------+
1 row in set (0.00 sec)

mysql>
  1. 這時候再來查看 從上 的zrlog表上的數據,會看到是同樣的
 
  1. 將主機器上的 表作一個刪除操做
  • truncate table website;
    • truncate 表示 清空
 
  1. 再來查看 主機器 的表和 從機器 上表都會被刪除了
 
  • 如果誤操做了,好比在從機器誤刪除了,再去主上刪除相同的數據,就會有可能致使主從失敗
    • 這時在從機器上 start slave;
    • 而後在start slave;
    • 再來查看show slave status\G
    • 如果仍是失敗,則只能 從新作主從了
      • 從新主從
      • 在主機器的數據庫上 show mater status; 查看文件大小
      • 而後在從機器上先stop slave;
        • 而後直接change master to master_host='192.168.202.130', master_user='repl', master_password='hanfeng', master_log_file='hf123.000001', master_log_pos=10549;
          • 由於基本還沒作什麼操做的,數據仍是一致的,直接改下數據大小就行
      • 而後在從機器上 start slave;
      • 再來查看 show slave status\G 看是否爲兩個Yes
      • 若實在只能從頭作主從的
相關文章
相關標籤/搜索