MySql批量加载命令行工具

时间:2009-10-26 17:16:59

标签: sql mysql bulkinsert load-data-infile

MySql是否有批量加载命令行工具,如bcp for SQLServer和sqlldr for Oracle?我知道有一个SQL命令LOAD INFILE或类似的但我有时需要将一个不同的文件块批量加载到MySQL数据库。

4 个答案:

答案 0 :(得分:7)

的mysqlimport。

采用与mysql命令行shell相同的连接参数。确保使用-L标志在本地文件系统上使用文件,否则它(奇怪地)会假定该文件在服务器上。

load data infile命令还有一个类似的变体,即load data local infile,根据该变量,文件将从客户端而不是服务器加载,这可能会完成你想要做的事情

答案 1 :(得分:6)

LOAD DATA LOCAL INFILE 'C:\\path\\to\\windows\\file.CSV'
INTO TABLE table_name
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(field1, field2, field3, fieldx);

答案 2 :(得分:2)

我认为mysqlimport可能会有所帮助吗?

以各种格式加载来自文本文件的表格。的基本名称 文本文件必须是应该使用的表的名称。 如果使用套接字连接到MySQL服务器,服务器将打开并且 直接读取文本文件。在其他情况下,客户端将打开文本 文件。 SQL命令'LOAD DATA INFILE'用于导入行。

答案 3 :(得分:2)

mysql -u root -p
use database;
source /path/yourfile.sql

您可能正在寻找,可以通过ssh使用rsync将“批量文件”从机器传输到另一台机器。