MySql是否有批量加载命令行工具,如bcp for SQLServer和sqlldr for Oracle?我知道有一个SQL命令LOAD INFILE
或类似的但我有时需要将一个不同的文件块批量加载到MySQL数据库。
答案 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将“批量文件”从机器传输到另一台机器。