Linux 用 shell 脚本 批量 导入 csv 文件 到 mysql 数据库

来源:互联网 发布:画工程图用什么软件 编辑:程序博客网 时间:2024/06/06 14:01

前提:

  • 每个csv文件第一行为字段名
  • 创建的数据库字段名同csv 文件的字段名

  • 导入一个 csv 文件
mysql --local-infile -uusename -ppassword databasename -e "LOAD DATA LOCAL INFILE '1.csv' INTO TABLE tablename FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'"

注:

(‘,’ 和 ‘\r\n’ 是根据你的csv 文件决定的 第一个是 字段分割的标志,第二个是行分割的标志)
(–local-infile: 没有这个会报错【ERROR 1148 (42000) at line 1: The used command is not allowed with this MySQL version】)

  • 批量导入 多个 csv 文件
for file in ./*.csv;do mv $file tablename.csv;mysqlimport --local --fields-terminated-by="," -uusename -ppassword databasename tablename.csv;rm tablename.csv;done

注:

改脚本在导入数据的同时会删除文件 别忘记在导入数据库前备份文件啊

0 1
原创粉丝点击