2009-05-04 66 views
1

I mysqldump --all-databases每晚作为备份。但是在将这个转储导入干净的安装中时,我显然遇到了一些问题。导入所有MySQL数据库

  1. 我显然不能(也不想)覆盖新的information_schema。
  2. 我的所有用户和权限设置都会丢失,除非我覆盖mysql数据库。

这种情况下的标准做法是什么?上传前从.sql文件解析出information_schema?我是否覆盖mysql数据库?

回答

0

对于排除数据库,试试这个bash脚本。

for DB in $(echo "show databases" | mysql -u <username> -p'<password>' | grep -v Database grep -v <some_db_to_exclude>) 
do 
    mysqldump -u <username> -p'<password>' ${DB} 
done