mysqldumpでテーブル定義のみを取得

mysqldumpでテーブル定義のみを取得

MySQLmysqldumpでテーブル定義のみを取得

MySQL でバックアップや特定のテーブルのみのメンテナンスをする際に、テーブル定義のみ(データは不要)を取得したい場合があります。逆にテーブル定義が不要だったり、DROP が不要だったり需要はさまざまだとは思いますが。

そこで、テーブル定義のみの取得の仕方について備忘録として残しておきます。詳しくは mysqldump --help で確認して下さい。my.cnf を調整することで、MySQL のサービス起動時に mysqldump のデフォルトの設定を変更することも可能です。

パスワードをコマンド上で入力すると、コマンド履歴に残ってしまうので、絶対にインタラクティブ(対話式)な形式で入力するようにして下さい。

[テーブル定義のみ取得] ※今回は特定のテーブルのみ
$ mysqldump -d -uUSERNAME -p -hDBHOST TABLENAME

[テーブル定義以外のデータを取得] ※今回は特定のテーブルのみ
$ mysqldump -t -uUSERNAME -p -hDBHOST TABLENAME

[DROP文を追加]
$ mysqldump -add-drop-table -uUSERNAME -p -hDBHOST TABLENAME

[ヘルプ]
$ mysqldump --help

-d, --no-data        No row information.
-t, --no-create-info Don't write table creation info.
--add-drop-table     Add a 'drop table' before each create.

最終更新日:

関連記事

人気記事

新着情報