通过命令行或PHP以json格式导出mysql数据库/ mysql表

我的信息表很大。我想将其导出为json格式以用于其他目的。我可以使用以下命令以xml格式导出。

mysql -u root -p --xml -e "SELECT * FROM db_name.tbl_name" > d:\export.xml

我为json格式尝试了以下内容。 mysql -u root -p --json -e "SELECT * FROM db_name.tbl_name" > d:\export.json

我收到错误消息 unknown option '--json'

PS:由于表很大,我无法使用任何第三方应用程序,例如PHPMyadmin / workbench / SQLyog。

如果您能帮助我,将不胜感激。

保罗

mysql无法直接以json格式输出

因此,您有两种选择:

1)以XML格式导出使用工具从XML转换为JSON(当然可以处理大型表的工具)

2)编写一个小脚本(例如,在PHP中),该脚本从DB中获取数据并将其写入JSON文件中

重要的提示:

如果选择选项nr。(2)如果您有很多记录,则可能很难在单个“原子”步骤中加载整个表数据,转换为JSON并保存到文件

但是,您可以将任务分为几步。

基本上,变成JSON的表格是一个对象数组,每个对象代表一个记录。

  1. 打开与数据库的连接

  2. 开始写入输出文件,并通过写入方括号打开数组 [

  3. 执行一次获取n(1 <n <1000)条记录的查询(为此,您必须SORT通过任何字段-ex。-表中id并使用该LIMIT子句)

  4. 用转换每个记录json_econde,将字符串写入文件,并以逗号表示,,除非您已写入最后一条记录。

  5. 返回3,直到达到最后一条记录。

  6. 将右方括号写入文件](关闭数组)。

  7. 关闭文件和数据库连接

这将需要更多的编码,但这不是火箭科学。

...也许您会在网上找到已经做到的事情。

更新:

可以在GitHub上找到一个脚本,该脚本可以从数据库中获取数据并将其写入JSON文件中:Dump-table-to-JSON

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章