我想要对我的MySQL数据库进行日常备份,可以使用BigDump进行恢复,因为我的一个表有超过4,000,000条记录。问题是,它不能使用扩展插入,如website所述。
注1:BigDump将无法处理包含扩展的大型表 插入。扩展插入包含一个SQL中的所有表条目 查询。 BigDump无法拆分此类SQL查询。在多数情况下 如果某些查询包含多行,BigDump将停止。
我正在尝试从ChronJob创建一个SQL转储,以便它与此脚本兼容?在他们的FAQ页面中,您可以使用phpmyadmin手动获取所需的结果:
在旧版本的phpMyAdmin中查找扩展插入切换 在导出设置中将其设置为关闭。在较新的phpMyAdmin中 版本选择在每个INSERT语句中包含列名称 在导出对话框的数据转储选项中使用的语法。
任何人都可以帮我解决这个问题吗?我根本没有使用shell命令的经验!我试着按照mysqldump docs这就是我已经得到的:
<?php
set_time_limit(86000);
include($_SERVER['DOCUMENT_ROOT']."/pagetop.php");
$db = new dbsettings;
$filename = date("d-m-Y");
exec("
mysqldump
--user=".$db->username."
--password=".$db->password."
--host=".$db->hostname."
--add-drop-database
--add-drop-table
--skip-extended-insert
--disable-keys
--add-locks
--force
".$db->databaseName."
>
/backups/".$filename.".sql
");
?>
我错过了应该使用的任何论据吗?我的exec语法是否正确?感谢您的任何见解