1

以下を含むスクリプトがあります...

$conn = "C:\Program Files\xxx xxx\xxx xxx\MySQLConfig\MySQL Server 5.0\bin\mysqldump.exe"

$sqlargs = @("--verbose", "--user=xxx", "--password=xxx", "--port=xxx", "--add-drop-database", "--routines", "--single-transaction", "--databases", "xxx")

$bak_file = "C:\backups\bak040312.sql"

$log_file = "C:\backups\logs\L040312.log"

(&$conn $sqlargs | out-file bak_file -Encoding UTF8) 2>>$log_file

echoargs を使用して、引数がexeに適切に渡されていることを確認しました

PS C:\scripts> echoargs $sqlargs
Arg 0 is <--verbose>
Arg 1 is <--user=xxx>
Arg 2 is <--password=xxx>
Arg 3 is <--port=xxx>
Arg 4 is <--add-drop-database>
Arg 5 is <--routines>
Arg 6 is <--single-transaction>
Arg 7 is <--databases>
Arg 8 is <xxx>

バックアップは期待どおりに実行されているようですが、mysqldump は mysql サーバーに接続した直後にエラーをスローしています。

mysqldump.exe : -- Connecting to localhost...
At line:1 char:3
+ (& <<<< $mysqlconn $sqlargs | out-file $bak_file -Encoding UTF8) 2>>$log_file
    + CategoryInfo          : NotSpecified: (-- Connecting to localhost...:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

-- Retrieving table structure for table agentactivity...
...
...
...
...
-- Retrieving rows...
-- Disconnecting from localhost...

&の代わりにinvoke-expressionを試しました...なぜこのエラーが発生するのかわかりません。どんな助けでも大歓迎です。

更新 私の目標は、詳細な出力と mysqldump からのエラーをログ ファイルに記録することです。

ありがとう

4

0 に答える 0