使用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
本文转自yzy121403725 51CTO博客,原文链接:http://blog.51cto.com/lookingdream/1905239
,如需转载请自行联系原作者