关于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';