MySQL导入导出CSV文件
MySQL在数据处理时非常有效,简单的数据处理可以使用Excel,但复杂的就得用SQL了;建议在本地机器安装MySQL8,Windows下可以下载免安装版本的,解压缩就可以直接使用,非常简单;再把c:/mysql-8.0.33-win64/bin放到Path下,就可以在命令窗直接启动,更简单了。
把数据导入导出到MySQL是常用的操作,使用程序来写略显笨拙,下面演示使用命令的方式。
- 启动服务器,需要加入下面参数来允许对文件写入写出
mysqld --console --local-infile=1 --secure-file-priv=c:/backup/
- 启动客户端,看到提示后输入密码
mysql -u user1 -p --local-infile=1
- 选择数据库
use db1;
- 导入数据
-
LOAD DATA LOCAL INFILE 'C:/backup/a.csv' INTO TABLE table1 FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (col_1, col_2, col_3);
-
- 导出数据,导出的CSV文件带Header
-
SELECT 'col_1', 'col_2', 'col_3' UNION ALL SELECT col_1, col_2, col_3 INTO OUTFILE 'C:/export/table1.csv' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' FROM table1;
-
- 另外,基于已经存在的表创建备份表也非常方便
CREATE TABLE TABLE_A_20240320 LIKE TABLE_A;
INSERT INTO TABLE_A_20240320 SELECT * FROM TABLE_A
- 对MySQL数据库备份有几种方法,下面是以SQL导出库:
mysqldump -u root -p db_dec > db_dec.sql
mysqldump -u root -p db_dec t_weekly > db_dec.t_weekly.sql
- 对备份数据进行恢复:
mysql -u root -p db_dec > db_dec.sql