mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

MySQL - テーブル定義/データのみダンプ出力!

[ サーバ構築 ] [ MySQL ]

こんばんは。

MySQL のダンプ出力に関しては、以前以下のような内容を記事にしました。

今回は、ダンプ出力時にテーブル定義のみを出力したり、テーブルデータのみを出力したりする方法についての記録です。

0. 前提条件

  • MySQL 5.5.31 での作業を想定。
    (バージョンは特に問わない。また、MariaDB でも同じはず)

1. テーブル定義のみダンプ出力

テーブル定義のみを出力する、つまりテーブル行情報を出力しない場合は、 --no-data または -d オプションを指定する。
(テーブル名を指定しない場合はデータベース単位でダンプされる)

1
$ mysqldump -uroot -phogehoge -d DB名 [テーブル名]

2. データのみダンプ出力

テーブルデータ(insert 文)のみを出力する、つまりテーブル定義を出力しない場合は、 --no-create-info または -tオプションを指定する。 (テーブル名を指定しない場合はデータベース単位でダンプされる)

1
$ mysqldump -uroot -phogehoge -t DB名 [テーブル名]

3. 参考サイト

4. その他

ストレージエンジンが MyISAM だけのデータベースの場合は、 mysqldump より mysqlhotcopy の方が良いようだ(高速のようだ)。


普段、ダンプ出力の際はテーブル定義とテーブルデータをまとめて出力していますが、データだけ(もしくはテーブル定義だけ)をエクスポート&インポートしたくなる局面があるため記録しておいた次第です。(ストレージエンジン移行時等)

以上。

Comments