各位专业人士,您好!
有一个很好且最简单的脚本想法来对每个数据库进行 mysqldump - 取自
dump all mysql tables into separate files automagically?
作者-https://stackoverflow.com/users/1274838/elias-torres-arroyo
脚本如下
#!/bin/bash
# Optional variables for a backup script
MYSQL_USER="root"
MYSQL_PASS="PASSWORD"
BACKUP_DIR="/backup/01sql/";
# Get the database list, exclude information_schema
for db in $(mysql -B -s -u $MYSQL_USER --password=$MYSQL_PASS -e 'show databases' | grep -v information_schema)
do
# dump each database in a separate file
mysqldump -u $MYSQL_USER --password=$MYSQL_PASS "$db" | gzip > "$BACKUP_DIR/$db.sql.gz"
done
sh
但问题是这个脚本不能“理解”这样的参数
--add-drop-database
执行
mysqldump -u $MYSQL_USER --password=$MYSQL_PASS "$db" --add-drop-database | gzip > "$BACKUP_DIR/$db.sql.gz"
是否知道如何强制此脚本理解下面列出的其他参数
mysqldump --help
因为虽然我所有的测试都表明事实并非如此。 预先感谢您提供任何尝试提示!
最佳答案
--add-drop-database
仅适用于 --all-databases
或 --databases
。
请参阅 docs 中的引用资料
因此,在您的情况下,mysqldump 实用程序会忽略提到的参数,因为您将转储一个数据库。
关于bash - 带参数的 MySQLdump,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20990241/