关于mysql中表引擎类型csv

关于mysql中表引擎类型csv

最近在将csv文件导入到mysql中

发现比较慢,记得mysql中有一个引擎csv

于是修改表结构删除自增id和索引,因为csv引擎不支持自增id和索引

然后使用导入命令,发现速度很快

如果导入出错

报错信息:ERROR 3948 (42000): Loading local data is disabled; this must be enabled on both the client and server sides

排查问题:

先检查local_infile的状态:使用sql指令

show global variables like 'local_infile';

在c端输入

set global local_infile=1;之后重进mysql c端即可;

方法二:

在mysql的my.ini配置文件中添加

[mysqld]

local-infile=1

即可

修改配置文件后就重新启动进入MySQL即可解决问题导入外部数据喽

 

执行导入命令

LOAD DATA INFILE '/path/to/csvfile.csv'
INTO TABLE mytable
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;

但是执行select count(*) from table的时候太慢

也可以将csv引擎表的数据导出到csv文件

SELECT * FROM users
INTO OUTFILE '/path/to/your/file.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: