sql >> データベース >  >> RDS >> Mysql

データベース行を作成するmysqldump

    デフォルトではmysqldump 常にCREATE DATABASE IF NOT EXISTS db_name;を作成します ダンプファイルの先頭にあるステートメント。

    [編集 ] mysqldumpに関するいくつかのこと ファイルとそのオプション:

    --all-databases-A

    すべてのデータベースのすべてのテーブルをダンプします。これは、--databasesを使用するのと同じです。 オプションを選択し、コマンドラインですべてのデータベースに名前を付けます。

    --add-drop-database

    DROP DATABASEを追加します 各CREATE DATABASEの前のステートメント 声明。このオプションは通常、--all-databasesと組み合わせて使用​​されます または--databases CREATE DATABASEがないためオプション これらのオプションのいずれかが指定されていない限り、ステートメントが書き込まれます。

    --databases-B

    いくつかのデータベースをダンプします。通常、mysqldump コマンドラインの名引数をデータベース名として扱い、後続の名前をテーブル名として扱います。このオプションを使用すると、すべての名前引数がデータベース名として扱われます。 CREATE DATABASE およびUSE ステートメントは、新しい各データベースの前に出力に含まれます。

    --no-create-db-n

    このオプションは、CREATE DATABASEを抑制します --databasesの場合、出力に含まれるステートメント または--all-databases オプションが与えられます。

    少し前に、ファイルの先頭にそのようなステートメントがないことについて実際に尋ねる同様の質問がありました(XMLファイルの場合)。その質問へのリンクはこちら 。

    だからあなたの質問に答えるために:

    • ダンプするデータベースが1つある場合は、--add-drop-databaseが必要です。 mysqldumpのオプション ステートメント。
    • ダンプするデータベースが複数ある場合は、オプション--databasesを使用する必要があります または--all-databases およびCREATE DATABASE 構文は自動的に追加されます

    詳細については、MySQLリファレンスマニュアル をご覧ください。



    1. 制限を続編し、クエリ内の誤った配置をオフセットします

    2. オブジェクト'DF__*'は列'*'に依存しています-intをdoubleに変更します

    3. MariaDBでのLEFT()のしくみ

    4. MySQL:1つのテーブルからレコードをカウントしてから、別のテーブルを更新します