準備:建立備份專用用戶
GRANT SELECT, RELOAD, LOCK TABLES ON *.* TO 'hotcopy'@'localhost' IDENTIFIED BY '123456';
常用正則模式
| 需求 | 命令範例 |
| 備份以 abc 開頭的所有庫 | mysqlhotcopy --flushlog -u'hotcopy' -p'123456' --regexp=^abc /home/bak |
| 備份以 a-d 字母開頭的庫 | mysqlhotcopy --flushlog -u'hotcopy' -p'123456' --regexp=^[a-d] /home/bak |
| 備份 test 庫中以 abc 開頭的表 | mysqlhotcopy --flushlog -u'hotcopy' -p'123456' test./^abc/ /home/bak |
| 備份 test 庫中非 abc 開頭的表 | mysqlhotcopy --flushlog -u'hotcopy' -p'123456' test./~^abc/ /home/bak |
| 備份 test 庫中 abc_a ~ abc_w 開頭的表 | mysqlhotcopy --flushlog -u'hotcopy' -p'123456' test./^\(abc_[a-w]\)/ /home/bak |
關鍵點
--regexp 匹配數據庫名;db./pattern/ 匹配表名。
~ 表示取反(排除模式)。
- 括號需轉義
\( \)。
- 配合
--flushlog 確保一致性。