时间:2021-07-01 10:21:17 帮助过:30人阅读
- 最近在做mysql的数据导入导出得到的一些经验,记录下。
- 1.首先要开通导入导出的功能,需要设置一个mysql的配置
- 可以在 my.conf 文件的最后增加配置项 secure-file-priv=‘‘
- 用这个命令查到当前的设置
- SHOW VARIABLES LIKE ‘%secure_file_priv%‘;
- 如果为 NULL 表示禁止导入导出,如果指定了具体路径,则导入导出必须在这个路径下,如果为空字符串,则可以导出到任意路径(必须要有足够权限写任意的路径权限)
- 如果权限不够则可以默认到mysql的数据文件目录;
- 没有设置的错误信息,
- 错误代码: 1290
- The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
- 2.权限问题,在windows下权限问题好解决。在linux下 mysql的用户权限有限,所以我只能默认导出的mysql的数据文件下。
- -- 如果指定路径则需要当前用户具有很高的权限才行,默认的话基本可以导出
- -- 默认路径为mysql的数据文件存放路径 可以用这个命令查看文件放哪个路径
- SHOW VARIABLES LIKE ‘%datadir%‘
- SELECT * INTO OUTFILE ‘2.txt‘ FIELDS TERMINATED BY ‘,‘ ENCLOSED BY ‘\"‘ LINES TERMINATED BY ‘\n‘ FROM mtdwgl_syn.irms_trans_pipehole;
- LOAD DATA INFILE ‘/data/mysql/2.txt‘ INTO TABLE mtdwgl_res.tb_irms_trans_pipehole CHARACTER SET utf8 FIELDS TERMINATED BY ‘,‘ ENCLOSED BY ‘\"‘ LINES TERMINATED BY ‘\n‘;
- 3.经过测试2300W条记录
- 导出花了1分46秒
- SELECT * INTO OUTFILE ‘2.txt‘ FIELDS TERMINATED BY ‘,‘ ENCLOSED BY ‘\"‘ LINES TERMINATED BY ‘\n‘ FROM mtdwgl_syn.irms_trans_pipehole;
- Query OK, 23040110 rows affected (1 min 46.01 sec)
- 导入花了 3分22秒
- LOAD DATA INFILE ‘/data/mysql/2.txt‘ INTO TABLE mtdwgl_res.tb_irms_trans_pipehole CHARACTER SET utf8 FIELDS TERMINATED BY ‘,‘ ENCLOSED BY ‘\"‘ LINES TERMINATED BY ‘\n‘;
- Query OK, 23040110 rows affected (3 min 22.10 sec)
- Records: 23040110 Deleted: 0 Skipped: 0 Warnings: 0
文件大小,测试的是2.txt文件,4.8G
sudo du -h /data/mysql/*.txt
480M /data/mysql/1.txt
4.8G /data/mysql/2.txt
linux下mysql 文件导入导出
标签:window warning delete mysq 信息 mina 设置 -- ble