我正在定期转储使用数据库进行日志记录的数据库。我需要创建一个mysqldump
命令来转储数据库中的所有内容,但不包括日志表的行信息。
我看到the no-data
parameter,但这似乎不支持仅选择某些表格。
答案 0 :(得分:8)
运行2个命令。您可以在其中列出要完全转储的所有表,一个只转储表定义的表
#structure only
mysqldump -d -q mydb table1 table2 table3
#all data too
mysqldump -q mydb table4 table5 table6
答案 1 :(得分:8)
你可以结合shell脚本来帮助更好地
#/bin/bash
# dump all except for table log
tables=$(mysql -N <<< "show tables from your_db" | grep -Ev "^log$" | xargs);
mysqldump your_db $tables > backup.sql
# dump structure for table log
mysqldump -d your_db log >> backup.sql