我使用的是 MySQL Server 5.5,需要安排每日数据库备份。 目前正在批处理文件中执行以下操作:
set currdate=%date:~4%
Set FileDate=%currdate:/=_%
mysqldump -u root-proot db > "C:\backup\database\db%FileDate%.sql"
它将所有表导出到一个文件中。我想为每个表导出一个文件。
最佳答案
以下代码首先将所有表名输出到一个临时文件,然后遍历它们,将每个表名转储到一个适当命名的文件中:
@echo off
set currdate=%date:~4%
set filedate=%currdate:/=_%
mysql --skip-column-names -u root -proot db -e "show tables;" > tables.tmp
for /f "skip=3 delims=|" %%t in (tables.tmp) do (
mysqldump -u root -proot db %%t > "C:\backup\database\db_%%table_%filedate%.sql"
)
del tables.tmp
关于mysql - 如何在 Windows 中安排每个文件一个表的 MySQL 数据库备份?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50388835/