mysqlhotcopy
mysqlhotcopy的使用,只能備份MYISAM引擎數據庫
安裝
yum install -y perl perl-DBI perl-DBD-MySQL
需要創建一個專門用來備份的賬戶
grant select,reload,lock tables on *.* to 'hotcopyer'@'localhost' identified by '123456';
常用選項和示例
mysqlhotcopy -u ... -p password -S /tmp/...sock 庫名(多庫名空格隔開) 備份的目錄
# -u -p 後面必須有空格 可以加一個--flushlog 刷新2進制文件
mysqlhotcopy -u ... -p ... -S ... 原庫名 新庫名 #會在mysql datadir下產生一個新庫目錄
- -q 安靜模式
- --flushlog 刷新2進制日誌
恢復數據
- 關閉數據庫
mysqladmin -uroot -p -S /mysql/data/mysql.sock shutdown
- 刪除datadir或者移走
把原數據移走,然後直接把備份的數據文件解壓並且放回到datadir下,並且修改所屬用戶和組爲mysql
cp -a 備份文件 datadir
chown mysql.mysql datadir
- 再啓動數據庫
service mysqld start