MySQL主從同步

所採用的mysql數據庫是rpm包方式安裝

1. Master:修改/etc/my.cnf文件[mysqld]

[mysqld]

server-id = 1

log-bin

innodb_flush_log_at_trx_commit=1

sync_binlog=1

datadir=/var/lib/mysql

2. Slave:修改/etc/my.cnf文件[mysqld]

[mysqld]

server-id=2

datadir=/var/lib/mysql

3. Master:在master數據庫設置用來同步的slave用戶權限

GRANT REPLICATION SLAVE ON *.*

TO '<slave_username>'@'<slave_ip>'

IDENTIFIED BY '<slave_password>';

例: grant replication slave on *.* to 'repl'@'192.168.1.2' identified by '123456';

4.Master上鎖表:flush tables with read lock;

           解鎖:unlock tables;

5. Master數據導到slave

   打包/var/lib/mysql目錄,然後scp拷貝到從庫上,覆蓋從庫/var/lib/mysql目錄

 

6. Master查看日誌節點和Position信息

查看主庫信息獲得日誌文件以及position

 mysql> show master status;

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

| File             | Position   | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-bin.000596 | 1050931156 |              |                  | 

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

7.從庫同步

mysql>STOP SLAVE;

mysql>CHANGE MASTER TO

     >MASTER_HOST='<master_host>',

     >MASTER_USER='<slave_username>',

     >MASTER_PASSWORD='<slave_password>',

     >MASTER_LOG_FILE='<see xtrabackup_binlog_info>',

     >MASTER_LOG_POS=<see xtrabackup_binlog_info>;

mysql>START SLAVE;

執行完上述命令後

 

mysql> show slave status \G

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

             Slave_IO_State: Waiting for master to send event

                Master_Host: 192.168.1.2

                Master_User: repl

                Master_Port: 3306

              Connect_Retry: 60

            Master_Log_File: mysql-bin.000596

        Read_Master_Log_Pos: 1036007396

             Relay_Log_File: localhost-relay-bin.000221

              Relay_Log_Pos: 1036007533

      Relay_Master_Log_File: mysql-bin.000596

           Slave_IO_Running: Yes

          Slave_SQL_Running: Yes

            Replicate_Do_DB: 

        Replicate_Ignore_DB: 

         Replicate_Do_Table: 

     Replicate_Ignore_Table: 

    Replicate_Wild_Do_Table: 

Replicate_Wild_Ignore_Table: 

                 Last_Errno: 0

                 Last_Error: 

               Skip_Counter: 0

        Exec_Master_Log_Pos: 1036007396

            Relay_Log_Space: 1036007533

            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

1 row in set (0.00 sec)

同步完成

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章