使用mysqlsh命令界面,您可以调用 JSON 导入实用程序,如下所示:
mysqlsh user@host:port/mydb -- util importJson <path> [options]
or
mysqlsh user@host:port/mydb -- util import-json <path> [options]
有关此语法的信息,请参阅 第 5.8 节 “API 命令行集成”。对于 JSON 导入实用程序,指定参数如下:
-
user 用于运行 JSON 导入实用程序的用户帐户的用户名。
-
host MySQL 服务器的主机名。
-
port MySQL Shell 连接到 MySQL 服务器的端口号。此连接的默认端口是 33060。
-
mydb 目标数据库的名称。从命令行调用 JSON 导入实用程序时,您必须指定目标数据库。您可以在类似 URI 的连接字符串中指定它,也可以使用其他
--schema命令行选项。-
path 包含要导入的 JSON 文档的文件(或 FIFO 特殊文件)的文件路径。
-
options -
、
--collection和 选项指定目标集合或目标表和列--table。 使用mysqlsh--tableColumn命令接口调用 JSON 导入实用程序时的关系和默认值与在 MySQL Shell 会话中使用相应选项时相同。如果您未指定这些选项中的任何一个,该实用程序将默认使用或创建具有提供的导入文件名称(不带文件扩展名)的目标集合。该
--convertBsonTypes选项将使用扩展表示的 BSON 数据类型转换为 JSON 格式。还可以指定特定 BSON 数据类型的附加控制选项;有关这些控制选项和默认类型转换的列表,请参阅 第 11.2.4 节,“BSON 数据类型表示的转换”。当您指定 时,该--convertBsonOid选项会自动设置为 on--convertBsonTypes。从MongoDB导入数据时,--convertBsonOid如果不转换BSON类型必须指定,因为MySQL Server要求将_id值转换为varbinary(32)类型。 可用于将值中的时间戳提取 到单独的字段中。--extractOidTime=field_name_id
以下示例将文件中的 JSON 文档导入
数据库products.json中的
products集合
mydb:
mysqlsh user@localhost/mydb -- util importJson products.json --collection=products