2012-01-12 18 views
3

私は何時間も検索しましたが、多くの投稿やチュートリアルがありますが、バッチスクリプトを実行できませんでした。 DOS上バッチスクリプトでmysqlスクリプトを実行

このコードは正常に動作しますプロンプト:

-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" 

エラーは次のとおりです。

ERROR 1045(28000):アクセスユーザーのrootに拒否されました-h localhost -p * * siir_07 dumper.s'@'localhost」(使用したパスワードは:NO)

答えて

4

Z:\ TEST.BAT:

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

私はコマンドラインから実行し、すべてのものOKです。したがって、引用符を削除し、<を使用して入力をリダイレクトしてみてください。

+0

ありがとう。それは今素晴らしいです – nikel

0

、これはあなたのユーザ名であると考えて

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

バッチスクリプト内で前後に引用符を変更してみてください

+0

ご返信ありがとうございます。 mysqlのヘルプテキストを出力するだけです。私は試行錯誤をしていたが、これを前に見た。 – nikel

1

あなたがすべき<を使用してファイルから入力をリダイレクトし、余分なスペースを削除します。

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

私も入れてお勧めしますユーザ名、パスワード、および個別のINIファイルの中で最もprobabryのcharsetパラメータと次のようにそれを使用する:

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

返事をありがとう。最後の2つの引用符を取り除いて修正しました。あなたの答えは – nikel

2

また、このソリューションは、私のために働いた

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

例えばSQLスクリプト を実行するためのソースを使用することができます。

この後
mysql -u my_username -D my_database -p < test.sql 

私は私がやった、私のパスワードを入力するためのプロンプトを持って、すべてがうまくいった。

関連する問題