2012-10-13 19 views
0

我即將複製生產數據庫,頻繁讀取/寫入。下面的MySQL手冊上的說明,我執行以下命令關於MySQL數據庫複製的問題 - READ LOCK之後的不同二進制日誌座標

mysql> FLUSH TABLES WITH READ LOCK; 
Query OK, 0 rows affected (0.16 sec) 

mysql> show master status; 
+------------------+-----------+--------------+------------------+ 
| File    | Position | Binlog_Do_DB | Binlog_Ignore_DB | 
+------------------+-----------+--------------+------------------+ 
| mysql-bin.000061 | 717697391 |    |     | 
+------------------+-----------+--------------+------------------+ 
1 row in set (0.00 sec) 

然後我通過執行以下命令

shell> mysqldump --lock-all-table --databases first second third -u root -p > dbdump.sql 

我然後運行以下命令啓動備份程序

mysql> show master status; 
+------------------+-----------+--------------+------------------+ 
| File    | Position | Binlog_Do_DB | Binlog_Ignore_DB | 
+------------------+-----------+--------------+------------------+ 
| mysql-bin.000061 | 717697462 |    |     | 
+------------------+-----------+--------------+------------------+ 
1 row in set (0.00 sec) 

mysql> show master status; 
+------------------+-----------+--------------+------------------+ 
| File    | Position | Binlog_Do_DB | Binlog_Ignore_DB | 
+------------------+-----------+--------------+------------------+ 
| mysql-bin.000061 | 717697462 |    |     | 
+------------------+-----------+--------------+------------------+ 
1 row in set (0.00 sec) 

如果執行「READ LOCK」語句後表格已被鎖定,爲什麼兩個連續的「show master status」命令中的座標位置不同?我應該使用哪個位置值進行復制?

順便說一句,我還需要備份過程後運行

mysql> UNLOCK TABLES; 

?或者當mysqldump完成時,表格將自動解鎖。

回答

0

如果您使用mysqldump--lock-all-tables選項,mysqldump將在轉儲開始時發送FLUSH TABLES WITH READ LOCK,因此您不需要手動執行此操作。

+0

感謝您的回答!但問題仍然存在:我應該使用哪個二進制日誌座標位置?謝謝。 – fanchyna