Jan*_*nvb 8 mysql import mysql-management file-upload load-data-infile
我正在尝试通过以下命令将95 GB CSV文件上传到MySQL数据库(MySQL 5.1.36):
CREATE TABLE MOD13Q1 (
rid INT UNSIGNED NOT NULL AUTO_INCREMENT,
gid MEDIUMINT(6) UNSIGNED NOT NULL ,
yr SMALLINT(4) UNSIGNED NOT NULL ,
dyyr SMALLINT(4) UNSIGNED NOT NULL ,
ndvi DECIMAL(7,4) NOT NULL comment 'NA value is 9',
reliability TINYINT(4) NOT NULL comment 'NA value is 9',
ndviquality1 TINYINT(1) NOT NULL ,
ndviquality2 TINYINT(1) NOT NULL ,
primary key (rid),
key(gid)
) ENGINE = MyISAM ;
LOAD DATA INFILE 'datafile.csv' INTO TABLE MOD13Q1 FIELDS TERMINATED by ',' LINES TERMINATED BY '\r\n'
IGNORE 1 LINES
(gid, yr, dyyr, ndvi, reliability,
ndviquality1, ndviquality2
) ;
Run Code Online (Sandbox Code Playgroud)
我目前正在通过DOS运行此脚本,但数据库没有响应.它适用于较小的CSV文件(1.5 GB).它适用于此文件大小吗?
您对如何更有效/更快地完成此操作有任何建议吗?engine = CSV是否可以替代(索引未激活! - >因此查询可能运行速度超慢?).
更新
感谢您的提示,它有效!
mysql> LOAD DATA INFILE 'E:\\AAJan\\data\\data.csv' INTO TABL
E MOD13Q1
-> FIELDS TERMINATED by ','
-> LINES TERMINATED BY '\r\n'
-> IGNORE 1 LINES
-> (gid, yr, dyyr, ndvi, reliability,
-> ndviquality1, ndviquality2
-> ) ;
Query OK, -1923241485 rows affected (18 hours 28 min 51.26 sec)
Records: -1923241485 Deleted: 0 Skipped: 0 Warnings: 0
mysql>
Run Code Online (Sandbox Code Playgroud)
希望这有助于其他人避免以块的形式分割数据.
| 归档时间: |
|
| 查看次数: |
3147 次 |
| 最近记录: |