Lax*_*idi 13 mysql import phpmyadmin
有没有办法将多个csv文件同时导入MySQL数据库?某种批量导入?
我在运行MAMP服务器的Mac OSX上.
我有185个csv文件,我需要导入MySQL表.我可以使用phpMyAdmin的导入选项卡单独导入它们,但这需要很长时间.有谁知道是否有更好的方法?
小智 13
使用这样的shell脚本:
#!/usr/bin/env bash
cd yourdirectory
for f in *.csv
do
mysql -e "USE yourDatabase LOAD DATA LOCAL INFILE '"$f"'INTO TABLE yourtable"
done
Run Code Online (Sandbox Code Playgroud)
kon*_*ddy 11
有一些PHP脚本供您使用:
#!/usr/bin/php
<?
mysql_connect('localhost','root','root'); // MAMP defaults
mysql_select_db('yourdatabase');
$files = glob('*.csv');
foreach($files as $file){
mysql_query("LOAD DATA INFILE '".$file."' INTO TABLE yourtable");
}
Run Code Online (Sandbox Code Playgroud)
请参阅适用于您的文档的LOAD DATA INFILE选项的MySQL手册.
小智 6
您可以使用 shell 脚本来遍历文件(这个假设它们在当前目录中):
#!/bin/bash
for f in *.csv
do
mysql -e "load data infile '"$f"' into table my_table" -u username --password=your_password my_database
done
Run Code Online (Sandbox Code Playgroud)