从PHP生成SQL中的MySQL数据转储

Álv*_*lez 8 php mysql sql

我正在编写一个PHP脚本来从我的数据库生成SQL转储以用于版本控制.它已经通过运行适当的SHOW CREATE ....查询来转储数据结构.现在我想转储数据本身,但我不确定最好的方法.我的要求是:

  • 我需要每行一条记录
  • 行必须按主键排序
  • 无论数据类型如何(整数,字符串,二进制数据......),SQL必须是有效且准确的.
  • 数据未更改时转储应相同

我可以检测并运行mysqldump外部命令,但这会增加额外的系统要求,我需要解析输出以删除页眉和页脚,其中包含我不需要的转储信息(例如服务器版本或转储日期).我希望尽可能简单地保持我的脚本,以便它可以保存在一个独立的文件中.

我有什么选择?

小智 1

我认为mysqldump输出解析仍然是最简单的。我认为您需要排除的元数据确实很少,因此删除这些元数据应该只需要几行代码。

您还可以查看以下 mysqdump 选项:--tab、--compact