通过批处理脚本运行mysql脚本

时间:2012-01-12 05:59:14

标签: mysql batch-file

我搜索了几个小时,有很多帖子或教程,但我无法运行我的批处理脚本。

在dos提示符下,此代码正常工作:

-u root -h localhost -p******** siir_07 dumper.sql

但这会给批处理带来错误:

"c:\program files\mysql\mysql server 5.5\bin\mysql.exe" "-u root -h localhost -p******** siir_07 dumper.sql"

错误是:

  

错误1045(28000):拒绝用户访问权限' root -h localhost -p * * siir_07 dumper.s' @' localhost' (使用密码:否)

5 个答案:

答案 0 :(得分:4)

Z:\ test.bat:

Z:\webserver\mysql\bin\mysql.exe -u test -p test < test.sql

当我从命令行运行它时,一切正常。因此,请尝试使用<删除引号并重定向输入。

答案 1 :(得分:3)

您还可以使用source来执行sql脚本 例如

 mysql -u%DBUSERNAME% -p%USERPASSWD% -D%DBNAME% -e "source something.sql;"

答案 2 :(得分:1)

您应该使用<从文件重定向输入并删除多余的空格:

mysql -uroot -p*** < dumper.sql

我还建议将用户名密码和大多数probabry charset参数放在一个单独的INI文件中,并按如下方式使用:

 mysql --defaults-extra-file=myconf.ini < dumper.sql

答案 3 :(得分:1)

这个解决方案对我有用:

mysql -u my_username -D my_database -p < test.sql

在此之后我得到了输入密码的提示,我做了,一切正常。

答案 4 :(得分:0)

它认为这是您的用户名

' root -h localhost -p** siir_07 dumper.s'

尝试更改批处理脚本中的引号