2017-02-22 8 views
1

データベースの名前の最初の文字がダッシュの場合、誰かがmysqldumpを動作させる方法を知っていますか?例:-s-oddly-named-dbデータベース名の先頭にダッシュを入れたMySQLダンプ

クライアントのアーカイブ用にこのデータベースをダンプする必要がありますが、ダッシュを最初の文字としてデータベースを作成する人は見たことがありません。 MySQL自体の中で私はバックティックを使ってそれを "使う"ことができ、すべて正常に動作しますが、mysqldumpを動作させることはできません。

--何をするかについて

mysqldump -u root -pXXXX --databases -- -xDatabase

以上がの意味:例えば--

を使用して mysqldump: unknown option '-s'

+0

一時的にデータベースの名前を変更できますか? mysqldumpを使用する必要がある場合、これがあなたの唯一の選択肢かもしれないと私は恐れていると思います。 – BenM

答えて

-1

mysqldump -p --databases '-s-oddly-named-db'

は私の応答を与えます:

特に断りのない限り、が先行するオプションを受け入れ、この セクションに記載の各組み込みコマンドは、 - 受け付け - オプションの 終わりを意味します。オプションの終わりを知らせるために--を使用し

EDIT @Barmarコメントにおかげ

getopts()ライブラリ関数によって実装されている一般的な慣例、です。それはおそらくmysdqldumpで動作する理由ですが、ドキュメントには記載されていません。

+1

なぜbashドキュメントを引用していますか?これは組み込みのbashではありませんか?そうでなければ答えは正しい。 – Barmar

+1

'--'を使ってオプションの終わりを知らせるのは、' getopts() 'ライブラリ関数によって実装される一般的な規則です。これはおそらく、ドキュメントには記載されていませんが、mysdqldumpで動作する理由です。 – Barmar

+0

私はbashを引用しました。 '--'機能のために' man'の参照を見つけることができないからです。 – hassan

関連する問題