Mysql:如何从文件夹运行批处理sql脚本

时间:2013-12-27 09:59:36

标签: mysql sql

我有一个包含很多sql脚本的文件夹。我想运行所有这些而不指定它们的名称。只需指定文件夹名称即可。有可能吗?

2 个答案:

答案 0 :(得分:10)

你不能原生,但这里是简单的bash命令:

for sql_file in `ls /path/to/directory`; do mysql -uUSER -pPASSWORD DATABASE < $sql_file ; done

此处USERPASSWORDDATABASE是相应的凭据,/path/to/directory是包含您的文件的文件夹的完整路径。

如果您只想过滤sql个文件,那么:

for sql_file in `ls /path/to/directory/*.sql`; do mysql -uUSER -pPASSWORD DATABASE < $sql_file ; done

答案 1 :(得分:2)

这对我有用: 1.在我的脚本文件夹中创建了一个shell脚本

for f in *.sql
  do
   echo "Processing $f file..."

   mysql -u user "-pPASSWORD" -h HOST DATABASE < $f

 done