3

mysqldump を使用してデータベースのスナップショットを取得しようとしていますが、root パスワードに角かっこが含まれており、問題が発生しています。私の知る限り、パスワードを [] で囲んで機能させることができましたが、まだ問題があります。

これをフォーマットする正しい方法は何ですか?

mysqldump -u root -p[(pwdwithbrackets)] databasename > file.sql
-bash: syntax error near unexpected token `('
4

3 に答える 3

8

シェル エスケープ手法を使用します。

-p\(pwdwithbrackets\)

... また:

'-p(pwdwithbrackets)'
于 2013-02-21T16:33:31.273 に答える
4

引用符で囲むだけです。

さらによいのは、 に引数を渡さず、-pプロンプトが表示されたら入力することです。何らかの方法でパスワードを公開することは望ましくありません。

于 2013-02-21T16:32:33.913 に答える
0

いずれにせよ、コマンド ラインでパスワードを平文で入力することは避けるのが最善です。

代わりに、それらをユーザーの MySQL 構成ファイルに入れることができます。

$ cat > ~/.my.cnf
[client]
user = root
password = [(pwdwithbrackets)]
^D

$ mysqldump databasename > file.sql

パスワードに角かっことかっこが含まれている場合、これが機能することをテストして確認しました。

オプションを他のファイルに配置して、次のように使用することもできます。

$ mysqldump --defaults-file=myconf.cfg database > file.sql
于 2013-02-21T16:40:05.640 に答える