天天看點

mysql is not empty_Xtrabackup恢複mysql資料時候報錯:Original data directory is not empty!

使用Xtrabackup恢複mysql資料時候報錯:Original data directory is not empty! at /usr/bin/innobackupex line 568.

網上普遍隻說了引起這種想象的兩種原因,還有第三種原因是我遇到的:

1.恢複備份檔案要保證mysql的data目錄為空,否則會報錯,解決辦法:# /etc/init.d/mysqld stop # cd /usr/local/mysql # cp -rf data{,.bak} # rm -rf ./data/*

2.data目錄是空的,原因是恢複資料時候沒有指定my.cnf的路徑,解決辦法:innobackupex --defaults-file=/etc/my.cnf --user=root --password=123123 --copy-back /opt/backupdb/2016-04-25_15-54-13/

注意:要把–defaults-file=/etc/my.cnf放在指令的最前面,否則也會報錯,讓你把這個參數放到最前面

3.以上都沒問題,可能是因為my.cnf中沒有指定data目錄的路徑造成的,解決辦法:# vi /etc/my.cnf [mysqld] datadir = /use/local/mysql/data