mysqldumpコマンドはバックアップや他のSQLサーバ(MySQLサーバに限りません)への転送のためにデータベースやデータベースのコレクションのダンプで使用します。ダンプには一般に、テーブルの作成やそこでのデータ配置、の片方または両方のSQLステートメントが含まれています。また、mysqldumpはCSVや他の区切り文字のテキスト、あるいはXMLフォーマットでファイルを生成させるために利用することもできます。
mysqldumpは次のオプションをサポートします。
--help, -?
ヘルプ メッセージを表示し、閉じます。
--add-drop-database
DROP DATABASEステートメントをCREATE DATABASEステートメントの前に追加します。
--add-drop-table
DROP TABLEステートメントをCREATE TABLEステートメントの前に追加します。
--add-locks
LOCK TABLESとUNLOCK TABLESステートメントで各テーブルダンプを囲みます。
ダンプファイルを再ロードする際のインサートの速度が向上します。
--all-databases, -A
すべてのデータベース内のすべてのテーブルをダンプします。
これは--databasesオプションを使用してコマンドラインですべてのデータベース名を指定するのと同じです。
--all-tablespaces, -Y
テーブルダンプに、NDB Clusterテーブルに使用されるテーブルスペース作成に必要なSQLステートメントを追加します。
このように指定しなければ、この情報はmysqldumpの出力には含まれていません。
このオプションは、現在MySQLクラスタテーブルに対してのみ有効です。
このオプションはMySQL 5.1.6.で加されました。
--allow-keywords
キーワードであるカラム名の作成を許容します。
これは各カラム名のプリフィクスにテーブル名を用いることで可能になります。
--character-sets-dir=path
キャラクタ セットがインストールされるディレクトリです。
--comments, -i
プログラムバージョン、サーババージョンやホストといった追加情報をダンプファイルに書き込みます。
このオプションはデフォルトで有効となっています。
追加情報を抑制するには、--skip-commentsを使用してください。
--compact
verbose生成を少なくします。
このオプションはコメントを抑制し、以下のオプションを有効化します。
--skip-add-drop-table
--no-set-names
--skip-disable-keys
--skip-add-locks
--compatible=name
古いMySQLサーバや他のデータベースシステムと互換性のある出力を生成します。
--complete-insert, -c
カラム名を含んだ、完全なINSERTステートメントを使用します。
--compress, -C
双方が圧縮をサポートしている場合、クライアント・サーバ間で行きかう情報を全て圧縮します。
--create-options
MySQL独特のオプションをCREATE TABLEステートメントに含みます。
--databases, -B
複数のデータベースをダンプします。
通常、mysqldumpはコマンドライン上の最初のアーギュメント名とそれに続く名をテーブル名として認識します。
このオプションを使用するうことで、名前のついたアーギュメントを全てデータベース名として認識します。
CREATE DATABASEやUSEステートメントは新しいデータベースの前の出力に含まれています。
--debug[=debug_options], -# [debug_options]
デバッグのログを書き込みます。
debug_options文字列は大抵'd:t:o,file_name'になります。
.'d:t:o,/tmp/mysqladmin.trace'がデフォルトになります。
--default-character-set=charset_name
charset_nameをデフォルトキャラクタセットとして使用します。
文字列が特定されていない場合、mysqldumpはutf8を使用します。
--delayed-insert
INSERTステートメントよりもINSERT DELAYEDステートメントを書き出します。
--delete-master-logs
マスタ複製サーバで、ダンプを実行後バイナリログを消去します。
このオプションは自動的に--master-dataを有効化します。
--events, -E
ダンプされたデータベースからイベントをダンプします。
このオプションはMySQL 5.1.8.で追加されました。
--extended-insert, -e
複数のVALUESリストを含む、複数行INSERT構文を使用してください。
これにより、ダンプファイルサイズを小さくし、ファイルが再ロードされる際の挿入スピードがあがります。
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-enclosed-by=...
--fields-escaped-by=...
これらのオプションは-Tオプションと共に使用され、LOAD DATA INFILEに対応する節と同じ意味があります。
--first-slave, -x
Deprecated.現在は--lock-all-tablesと名づけられています。
--flush-logs, -F
ダンプを始める前にMySQLサーバログファイルをフラッシュします。
--flush-privileges
mysqlデータベースのダンプ後、FLUSH PRIVILEGESステートメントを発行してください。
このオプションはダンプにmysqlデータベースが含まれている場合と、
正しいリストアのためにmysqlデータベース内に含まれているデータに依存するデータベースが含まれている場合に使用するべきです。
このオプションはMySQL 5.1.12.で追加されました。
--force, -f
テーブルダンプの最中にSQLエラーが発生しても続行します。
--host=host_name, -h host_name
与えられたホスト上でMySQLサーバからデータをダンプします。
デフォルト設定では、localhostがホストになります。
--hex-blob
16進変換表記法を使用しているバイナリカラムをダンプします(例えば、'abc'は0x616263となります)。
影響を受けるデータタイプはBINARY、VARBINARY、BLOB、そしてBITになります。
--ignore-table=db_name.tbl_name
データベースとテーブル名の両方を使用して特定されなければいけないテーブルをダンプしないでください。
複数テーブルを無視するには、このオプションを複数回使用してください。
--insert-ignore
INSERTステートメントをIGNOREオプションで書いてください。
--lines-terminated-by=...
これらのオプションは-Tオプションと共に使用され、LOAD DATA INFILEに対応する節と同じ意味があります。
--lock-all-tables, -x
データベース内のテーブルを全てロックします。
これは全ダンプの期間、グローバルリードロックを取得することで達成されます。
このオプションは自動的に--single-transactionと--lock-tablesをオフにします。
--lock-tables, -l
ダンプする前に全てのテーブルをロックします。
テーブルはREAD LOCALでロックされ、これによりMyISAMテーブルの場合同時インサートが許容されます。
--master-data[=value]
出力にバイナリログファイル名とポジションを書きます。
このオプションはRELOAD権限を要求し、バイナリログが有効化されていなければいけません。
--no-autocommit
各ダンプされたテーブルごとにINSERTステートメントをSET AUTOCOMMIT=0とCOMMIT ステートメントで囲みます。
--no-create-db, -n
このオプションは--databasesや--all-databasesオプションが提供されていた場合出力に含まれるCREATE DATABASEステートメントを抑制します。
--no-create-info, -t
各ダンプされたテーブルを再作成するCREATE TABLEステートメントを書かないでください。
--no-data, -d
テーブル行情報を書かないでください(つまりテーブル内容をダンプしないでください)。
これはテーブルのCREATE TABLEステートメントのみをダンプしたい場合に非常に便利です。
--opt
このオプションは省略用です。
以下のオプションを指定することと同じです。
--add-drop-table
--add-locks
--create-options
--disable-keys
--extended-insert
--lock-tables
--quick
--set-charset
デフォルトで有効になっています。
--order-by-primary
各テーブルの行をプライマリキーか、存在する場合、最初のユニークインデックスでソートします。
これは、InnoDBテーブルにロードするMyISAMテーブルをダンプしているときに便利ですが、
ダンプに要する時間がかなり伸びます。
--password[=password], -p[password]
サーバに接続する際使用するパスワードです。
ショートオプションフォーム(-p)を使用した場合、オプションとパスワードの間にスペースを置くことはできません。
--port=port_num, -P port_num
コネクションに使用するTCP/IPポート番号です。
--protocol={TCP|SOCKET|PIPE|MEMORY}
使用するべき接続プロトコルです。
--quick, -q
このオプションは大きなテーブルのダンプに便利です。
これにより、mysqldumpは全結果セットを取得、メモリ内でバッファ後表示といった
一連の作業を一気にこなさず、サーバから1行ずつ結果を取得します。
--quote-names, -Q
‘`’文字でデータベース、テーブル、そしてカラム名をクオートします。
ANSI_QUOTESSQLモードが有効化されている場合、名前は‘"’キャラクタでクオートされます。
このオプションはデフォルトで有効となっています。
--replace
INSERTステートメントよりもREPLACEステートメントを書き出します。
MySQL 5.1.3.より提供されています。
--result-file=file, -r file
指定したファイルに出力します。
このオプションはWindows上で‘\n’ニューライン文字が‘\r\n’carriage return/newlineシーケンスに変換されるのを阻止するために使用します。
ダンプ生成中にエラーが発生しても、結果ファイルは作成され、内容は上書きされます。
--routines, -R
記憶されたルーチンを(関数とプロシージャ) ダンプされたデータベースからダンプします。
--set-charset
出力にSET NAMES default_character_setを追加してください。
このオプションはデフォルトで有効となっています。
SET NAMESステートメントを抑制するには、--skip-set-charsetを使用してください。
--single-transaction
このオプションはサーバからデータをダンプする前にBEGIN SQLステートメントを発行します。
InnoDBといったトランザクションテーブルに対してのみ便利です。
--skip-opt
--optオプションの詳細を参照してください。
--socket=path, -S path
localhostの接続用に使用する、ユニックスではソケットファイル、Windowsでは使用する名づけられたパイプ。
--skip-comments
--commentsオプションの詳細を参照してください。
--ssl*
--sslで始まるオプションは、SSLを介してサーバに接続し、
SSL キーや証明の場所を明示するか否かを指定します。
--tab=path, -T path
タブによって分けられたデータファイルを生成します。
--tables
--databasesあるいは-Bオプションをオーバーライドしてます。
mysqldumpはこのオプションに続く名前アーギュメントをテーブル名として認識します。
--triggers
ダンプされたテーブルごとにトリガをダンプします。
このオプションはデフォルトで有効化されています。
--skip-triggersを使用して無効化してください。
--tz-utc
ダンプファイルにSET TIME_ZONE='+00:00'を追加してください。
これにより、TIMESTAMPカラムは異なるタイムゾーンにあるサーバ間でダンプ・再ロードされます。
このオプションなしでは、TIMESTAMPカラムはソースとデスティネーションサーバのタイムゾーンにダンプ・再ロードされ、値が変わる場合があります。
--tz-utcはサマータイムによる時間の変更に対してもプロテクトします。
--tz-utcはデフォルトで有効化されています。
無効化するには、--skip-tz-utcを使用してください。
このオプションはMySQL 5.1.2.で追加されました。
--user=user_name, -u user_name
サーバに接続する際使用するMySQLユーザ名です。
--verbose, -v
Verbose モードプログラムの動作についてさらに情報を表示します。
--version, -V
バージョン情報を表示します。
--where='where_condition', -w 'where_condition'
あるWHERE状態に選択された行のみダンプします。
ユーザのコマンドインタープリタにとって特別なキャラクタ、もしくはスペースを含んでいる場合、
状態の周りをクオートで囲まなければいけません。
--xml, -X
XMLを書き出します。
|
Solaris 11.2 システムハンドブック |
Oracle Solaris 11 試験対策本(OCA) |