0

我编写了一个脚本来定期导出我的数据库:

#!/bin/bash

current_date=`date '+%F-%H-%M-%S'`

cd /home/user/Documents/backup
mysqldump -umyusername -pmypassword mydb > db-backup-$current_date.sql
tar czvf db-backup-$current_date.tgz db-backup-$current_date.sql
rm db-backup-$current_date.sql

但我想使用 phpMyAdmin 提供的以下选项导出它:

  • 在交易中附上出口
  • 禁用外键检查
  • 添加 DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT 语句

我怎么能做到这一点?

编辑

我可以在 mydatabase.sql 文件的开头添加以下行吗?

SET FOREIGN_KEY_CHECKS=0;
SET AUTOCOMMIT=0;
START TRANSACTION;

如果这样做是正确的,那么我想我的问题是如何在给定位置插入行?

4

1 回答 1

1

哟可能可以通过 mysqldump 本身完成大部分工作:

mysqldump \
--user=LOGIN \
--password=PASSWORD \
--single-transaction \
--events \
--triggers \
--routines \
--disable-keys \
--create-options \
database  > dumpfile.sql

--create-options也应该发出drop命令。

查看mysqldump --help所有可能选项的列表

另一种方法是查看 PHPphpMyAdmin并查看它使用了哪些选项

于 2012-10-08T13:24:32.390 回答