この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 18434|答える: 2

[出典] MySQLは条件付きデータにmysqldumpを使用します

[リンクをコピー]
掲載地 2019/04/26 16:07:23 | | | |

MySQLデータベースのバックアップとエクスポート
https://www.itsvse.com/thread-4004-1-1.html
(出典:Architect_Programmer)
MySQLdump はデータベースの要約をインポートおよびエクスポートします
https://www.itsvse.com/thread-4353-1-1.html
(出典:Architect_Programmer)
mysqldump エクスポートするデータベース「Access denied」
https://www.itsvse.com/thread-4005-1-1.html
(出典:Architect_Programmer)

上記のリンクにあるように、データベース全体の内容がエクスポートされますが、条件付きでエクスポートできますか? もちろんできます!


命令:

パラメータ解析:

  • -h: データベースアドレスを指定する
  • --port: データベースポートを指定します。デフォルトポート3306の場合は省略可能です
  • -U: 口座番号
  • -p: パスワード
  • db_name:これはどのデータベースをエクスポートするかを指します
  • tab_name: どのテーブルをエクスポートするかを指します
  • --ここで:データフィルター基準
  • --no-create-info: CREATE TABLE 文を追加せずにデータをエクスポートするだけです。


最後に、ストレージをエクスポートする場所まで道をたどってください。

説明:

-t: ガイドデータのみ

--ここで:条件

--triggers=false: トリガーをガイドしない

--replace: INSERT INTO を REPLACE INTO に置き換える



パラメータ:

--すべてのデータベース、-A

すべてのデータベースをエクスポートしてください。

mysqldump -uroot -p --all-databases

--全テーブルスペース , -Y

すべてのテーブルスペースをエクスポートしてください。

mysqldump -uroot -p --all-databases --all-tablespaces

--テーブルスペースなし , -y

テーブルスペース情報はエクスポートされません。

mysqldump -uroot -p --all-databases --no-tablespaces

--追加-削除-データベース

各データベースを作成する前にドロップデータベース文を追加してください。

mysqldump -uroot -p --all-databases --add-drop-database

--加算-ドロップテーブル

各データテーブルを作成する前にドロップテーブル文を追加してください。 (デフォルトはオープンなので、キャンセルには--skip-add-drop-tableオプションを使ってください)

mysqldump -uroot -p --all-databases (デフォルトでadd drop文)

mysqldump -uroot -p --all-databases –skip-add-drop-table (undrop文)

--add-locks

各テーブルのエクスポート前にLOCK TABLEを追加し、その後にUNLOCK TABLEを導入してください。 (デフォルトはオンなので、キャンセル時には--skip-add-locksを使ってください)

mysqldump -uroot -p --all-databases(LOCK文はデフォルトで追加されます)

mysqldump -uroot -p --all-databases –skip-add-locks (unlock statement)

--allow-キーワード

キーワードの列名を作成できます。 これは各列名にテーブル名を接頭辞で付けることで行われます。

mysqldump -uroot -p --all-databases --allow-keywords

--apply-slave-statements

エクスポートの最後に「CHANGE MASTER」と「START SLAVE」を「START SLAVE」と付け加えてください。

mysqldump -uroot -p --all-databases --apply-slave-statements

--character-sets-dir

キャラクターセットファイルのディレクトリ

mySQLdump -uroot -p --all-databases --character-sets-dir=/usr/local/mysql/share/mysql/charsets

--コメント

追加の注釈情報。 デフォルトでオンで、--skip-commentsでキャンセルできます

mysqldump -uroot -p --all-databases (default record comments)

mysqldump -uroot -p --all-databases --skip-comments (uncomment)

--互換性があります

エクスポートされたデータは他のデータベースや古いバージョンのMySQLと互換性があります。 値はANSI、MySQL323、MySQL40、PostgreSQL、Oracle、MSSQL、DB2、MaxDB、no_key_options、no_tables_options、no_field_optionsなどです。

複数の値を使う場合は、コンマで間隔を空けてください。 完全に互換性があるとは限りませんが、できる限り互換性があります。

mysqldump -uroot -p --all-databases --compatible=ansi

--コンパクト

出力情報のエクスポートは減らせます(デバッグ用)。 注釈や表・尾などの構造を削除しましょう。 オプションは以下の通りです:--skip-add-drop-table --skip-add-locks --skip-comments --skip-disable-keys

mysqldump -uroot -p --all-databases --compact

--完全挿入、-c

完全な挿入文(列名を含む)を使いましょう。 これにより挿入効率は向上しますが、max_allowed_packetパラメータの影響を受け、挿入失敗の原因となることがあります。

mysqldump -uroot -p --all-databases --complete-insert

--圧縮、-C

クライアントとサーバー間ですべての情報をやり取りするための圧縮を有効にしてください

mysqldump -uroot -p --all-databases --compress

--create-options, -a

CREATE TABLE文にすべてのMySQL機能オプションを含めてください。 (デフォルトがオン)

mysqldump -uroot -p --all-databases

--データベース、-B

複数のデータベースをエクスポートしましょう。 パラメータの後にあるすべての名前パラメータはデータベース名として扱われます。

MySQLdump -uroot -p --databases test mySQL

--デバッグ

デバッグ情報の出力。 デフォルト値は d:t:o,/tmp/mysqldump.trace です

mysqldump -uroot -p --all-databases --debug

mysqldump -uroot -p --all-databases --debug=" d:t:o,/tmp/debug.trace"

--デバッグチェック

メモリを確認し、ファイルの開く手順を確認して終了してください。

mysqldump -uroot -p --all-databases --debug-check

--debug-info

デバッグ情報の出力と終了

mysqldump -uroot -p --all-databases --debug-info

--デフォルト文字セット

デフォルトの文字セットを設定し、デフォルト値はutf8です

mysqldump -uroot -p --all-databases --default-character-set=latin1

--遅延挿入

データのエクスポートに遅延を挿入

mysqldump -uroot -p --all-databases --delayed-insert

--マスターログ削除

マスターバックアップはログを削除します。 このパラメータは自動的に---master-dataを起動します。

MySQLdump -uroot -p --all-databases --delete-master-logs

--キーを無効化

各テーブルに対して、/*!40000 ALTER TABLE tbl_name DISABLE KEYS */; および /*!40000 ALTER テーブル tbl_name ENABLE キー */; この文はINSERT文を参照します。 これにより、すべての行を挿入した後にインデックスが作成され、ダンプされたファイルのインポートがより速くなります。 このオプションはMyISAMテーブルでのみ利用可能で、デフォルトではオープン状態になります。

mysqldump -uroot -p --all-databases

――ゴミ捨て奴隷

このオプションにより、エクスポートされたデータが付加されるファイルにメインのビンログの場所とファイル名が付加されます。 1に設定されている場合、CHANGE MASTERコマンドを使ってデータファイルに出力します。 2に設定したら、コマンドの前に説明情報を追加してください。 このオプションは、--single-transactionが指定されていない限り--lock-all-tablesをオンにします。 このオプションは自動的に--lock-tablesオプションをオフにします。 デフォルト値は0です。

mysqldump -uroot -p --all-databases --dump-slave=1

mysqldump -uroot -p --all-databases --dump-slave=2

--イベント、-E

輸出イベント。

mysqldump -uroot -p --all-databases --events

--拡張挿入、-e

複数のVALUES列を持つINSERT構文を使用します。 これによりファイルのエクスポートが小さくなり、インポートも速くなります。 デフォルトでオープンステートに設定し、キャンセルオプションは--skip-extended-insertを使ってください。

mysqldump -uroot -p --all-databases

mysqldump -uroot -p --all-databases--skip-extended-insert (unoption)

--場-終点-by

エクスポートファイルの指定されたフィールドは無視してください。 --tabオプションで使用され、--databasesや--all-databasesオプションでは使いません

mysqldump -uroot -p test test --tab="/home/mysql" --fields-terminated-by="#"

--囲い場

出力ファイルの個々のフィールドは与えられた文字でラップされます。 --tabオプションで使用され、--databasesや--all-databasesオプションでは使いません

mySQLdump -uroot -p test test --tab="/home/mysql" --fields-enclosed-by="#"

--フィールド-任意的に囲み込み-by

出力ファイルのフィールドは与えられた文字で選択的にラップされます。 --tabオプションで使用され、--databasesや--all-databasesオプションでは使いません

mysqldump -uroot -p test test --tab="/home/mysql" --fields-enclosed-by="#" --fields-optionally-enclosed-by ="#"

--場が脱出した

出力ファイル内の個々のフィールドは与えられた文字を無視します。 --tabオプションで使用され、--databasesや--all-databasesオプションでは使いません

mysqldump -uroot -p mysql user --tab="/home/mysql" --fields-escaped-by="#"

――流しろ

エクスポートを始める前にログを更新してください。

ご注意ください:複数のデータベースを一度にエクスポートする場合(--databases または--all-databasesオプションを使用)、ログはデータベースごとに更新されます。 ただし、--lock-all-tablesや--master-dataを使う場合は例外です。 この場合、ログは一度だけ更新され、対応するテーブルも同時にロックされます。 したがって、ログをエクスポートとフラッシュを同時に行う場合は、--lock-all-tablesや--master-dataと--flush-logsを使うべきです。

mysqldump -uroot -p --all-databases --flush-logs

――フラッシュ特権

mysqlデータベースをエクスポートした後、FLUSH PRIVILEGES文を発行します。 適切な復旧のためには、このオプションを使っていつでもMySQLデータベースおよび依存するMySQLデータベースデータをエクスポートする必要があります。

mysqldump -uroot -p --all-databases --flush-privileges

--力

エクスポート中に発生するSQLエラーは無視してください。

mysqldump -uroot -p --all-databases --force

--ヘルプ

ヘルプ情報表示と退出。

mysqldump --ヘルプ

--六角形塊

16進形式で2進文字列フィールドをエクスポートできます。 バイナリデータがある場合、このオプションを使用する必要があります。 影響を受けるフィールドタイプはBINARY、VARBINARY、BLOBです。

mysqldump -uroot -p --all-databases --hex-blob

--ホスト、-h

エクスポートが必要なホスト情報

mysqldump -uroot -p --host=localhost --all-databases

--テーブルを無視

指定されたテーブルはエクスポートされません。 複数のテーブルを無視する指定を行う場合は、1つずつ何度も繰り返す必要があります。 各テーブルはデータベースとテーブル名の両方を指定しなければなりません。 例えば:--ignore-table=database.table1 --ignore-table=database.table2 ......

mysqldump -uroot -p --host=localhost --all-databases --ignore-table=mysql.user

--master-host-port

「CHANGE MASTER TO ..」--dump-slaveによって生成されました 文に「MASTER_HOST=<host>,MASTER_PORT=<port>」を加えます  

mysqldump -uroot -p --host=localhost --all-databases --include-master-host-port

--挿入-無視

行を挿入する際はINSERT IGNORE文を使いましょう。

mysqldump -uroot -p --host=localhost --all-databases --insert-ignore

--線-終端-by

出力ファイルの各行は特定の文字列で割られます。 ---tabオプションで使用され、--databasesや--all-databasesオプションには使われません。

mysqldump -uroot -p --host=localhost test test --tab="/tmp/mysql" --lines-terminated-by="##"

--ロック-オールテーブル、-x

すべてのデータベースのテーブルをロックするリクエストを提出し、データの一貫性を確保してください。 これはグローバルリードロックであり、--single-transactionおよび--lock-tablesのオプションは自動的にオフにされます。

mysqldump -uroot -p --host=localhost --all-databases --lock-all-tables

--ロックテーブル、-l

エクスポートを始める前にすべてのテーブルをロックしてください。 テーブルをREAD LOCALでロックして、MyISAMテーブルを並列に挿入できるようにします。 InnoDBやBDBのようにトランザクションをサポートするテーブルでは、単一トランザクションの方がテーブルをロックする必要がなく、より良い選択肢です,--

複数のデータベースをエクスポートする際,--ロックテーブルは各データベースごとに個別にテーブルをロックします。 したがって、このオプションはエクスポートファイル内のテーブル間の論理的一貫性を保証するものではありません。 異なるデータベーステーブルのエクスポート状況は全く異なる場合があります。

mysqldump -uroot -p --host=localhost --all-databases --lock-tables

--ログエラー

指定されたファイルに警告やエラーメッセージを付ける

mysqldump -uroot -p --host=localhost --all-databases --log-error=/tmp/mysqldump_error_log.err

--マスターデータ

このオプションは、ビンログの場所とファイル名を出力ファイルに付け加えます。 1の場合はCHANGE MASTERコマンドが出力されます。 2の場合は、出力するCHANGE MASTERコマンドの前にコメントを追加します。 オプションは--lock-all-tablesオプションをオンにしますが、--single-トランザクションも指定されていない限り(この場合、エクスポート開始時にグローバルリードロックは短い時間を持ちます; その他の内容については、以下の--single-transactionオプションをご参照ください。 このオプションは自動的にオフになります --lock-tables オプション。

mysqldump -uroot -p --host=localhost --all-databases --master-data=1;

mysqldump -uroot -p --host=localhost --all-databases --master-data=2;

――max_allowed_packet

サーバーが送信・受理した最大パケット長。

mysqldump -uroot -p --host=localhost --all-databases --max_allowed_packet=10240

――net_buffer_length

TCP/IPおよびソケット接続のキャッシュサイズ。

mysqldump -uroot -p --host=localhost --all-databases --net_buffer_length=1024

--オートコミットなし

autocommit/commit文を使ってテーブルをラップします。

mysqldump -uroot -p --host=localhost --all-databases --no-autocommit

--no-create-db, -n

CREATE DATABASE文を追加せずにデータをエクスポートするだけです。

mysqldump -uroot -p --host=localhost --all-databases --no-create-db

--no-create-info, -t

CREATE TABLE文を追加せずにデータをエクスポートするだけです。

mysqldump -uroot -p --host=localhost --all-databases --no-create-info

--データなし、-d

データはエクスポートされず、データベースのテーブル構造だけがエクスポートされます。

mysqldump -uroot -p --host=localhost --all-databases --no-data

--集合名なし、-N

--skip-set-charsetに相当します

mysqldump -uroot -p --host=localhost --all-databases --no-set-names

--OPT

--add-drop-table、--add-locks、--create-options、--quick、--extended-insert、--lock-tables、--set-charset、--disable-keys と同等です。このオプションはデフォルトで有効で、--skip-optで無効化できます。

mysqldump -uroot -p --host=localhost --all-databases --opt

--一次順

主キーや最初の一意キーが存在する場合は、各テーブルのレコードをソートします。 これはMyISAMテーブルをInnoDBテーブルにエクスポートする際には機能しますが、エクスポートに時間がかかります。

mysqldump -uroot -p --host=localhost --all-databases --order-by-primary

--パスワード、-p

データベースのパスワードを接続してください

--パイプ(窓用)

名前付きパイプラインを使ってmysqlに接続します

mysqldump -uroot -p --host=localhost --all-databases --pipe

--ポート、-P

データベースのポート番号に接続

--プロトコル

使用された接続プロトコルには、TCP、ソケット、パイプ、メモリが含まれます。

mysqldump -uroot -p --host=localhost --all-databases --protocol=tcp

――早く、―Q

クエリをバッファリングせずに標準出力に直接エクスポートできます。 デフォルトはオンなので、--skip-quickを使ってこのオプションをキャンセルしてください。

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-quick

--引用名、-Q

テーブル名やカラム名を表示するために(')を使います。 デフォルトは有効なので、--skip-quote-namesを使ってこのオプションをキャンセルしてください。

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-quote-names

--置き換え

REPLACE INTO を使って INSERT INTO を置き換えてください。

mysqldump -uroot -p --host=localhost --all-databases --replace

--result-file, -r

指定されたファイルに直接出力します。 このオプションは、改行ラップを使用するシステム(例:DOS、Windows)で使用すべきです。 このオプションにより、1本のラインのみが使用されます。

mysqldump -uroot -p --host=localhost --all-databases --result-file=/tmp/mysqldump_result_file.txt

--ルーチン、-R

ストアドプロシージャやカスタム関数のエクスポートも可能です。

mysqldump -uroot -p --host=localhost --all-databases --routines

--集合字セット

出力ファイルに「SET NAMES default_character_set」を追加します。 デフォルトでオープン状態にし、--skip-set-charsetを使ってオプションを閉じます。

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-set-charset

--単一トランザクション

このオプションはデータをエクスポートする前にBEGIN SQL文を提出し、アプリケーションのブロックを行わず、エクスポート時のデータベースの状態が一貫していることを保証します。 これはマルチバージョンストレージエンジンでのみ動作し、InnoDBのみで動作します。 このオプションと--lock-tablesのオプションは相互排他的であり、LOCK TABLESは保留中のトランザクションを暗黙的にコミットする仕組みです。 大きなテーブルをエクスポートしたい場合は、--quickオプションを組み合わせて使うべきです。

MySQLdump -uroot -p --host=localhost --all-databases --single-transaction

--ダンプデート

出力ファイルにエクスポート時間を追加します。 デフォルトでオープン状態にし、閉じるには--skip-dump-dateを使う。

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-dump-date

--スキップオプト

–optオプションを無効にしてください。

MySQLdump -uroot -p --host=localhost --all-databases --skip-opt

--ソケット、-S

mysqlに接続するソケットファイルの位置を指定すると、デフォルトのパスは/tmp/mysql.sockです

mysqldump -uroot -p --host=localhost --all-databases --socket=/tmp/mysqld.sock

--タブ、-T

与えられたパス内の各テーブルごとにタブ分割のテキストファイルを作成します。 注意:mysqldumpとmysqldサーバーが同じマシン上で動作する場合のみです。

mysqldump -uroot -p --host=localhost test test --tab="/home/mysql"

--表

エクスポートするテーブル名を指定するために --databases (-B) パラメータをオーバーライドします。

mysqldump -uroot -p --host=localhost --databases test --tables test

――トリガー

エクスポートトリガー。 このオプションはデフォルトで有効にしていますが、--skip-triggersで無効にしてください。

mysqldump -uroot -p --host=localhost --all-databases --triggers

--TZ-UTC

エクスポートの上部にタイムゾーンTIME_ZONE='+00:00'を設定し、異なるタイムゾーンでエクスポートされた際やデータが異なるタイムゾーンに移動された際のタイムスタンプデータの正確性を確保してください。

mysqldump -uroot -p --host=localhost --all-databases --tz-utc

--ユーザー、-u

接続のユーザー名を指定してください。

――冗長、――V

複数のプラットフォーム情報を出力します。

--バージョン、-V

mysqldumpのバージョン情報を出力して終了します

--ここで、-w

与えられたWHERE条件で選択されたレコードのみがダンプされます。 条件にコマンドインタプリタ固有の空間や文字が含まれている場合は、必ずその条件を参照してください。

mysqldump -uroot -p --host=localhost --all-databases --where=" user='root'"

--xml, -X

XML形式をエクスポート。

mysqldump -uroot -p --host=localhost --all-databases --XML

――plugin_dir

異なるプラグインバージョンとの互換性のためのクライアントサイドプラグインのディレクトリです。

mysqldump -uroot -p --host=localhost --all-databases --plugin_dir="/usr/local/lib/plugin"

――default_auth

クライアントプラグインはデフォルトで権限を使用します。

mysqldump -uroot -p --host=localhost --all-databases --default-auth="/usr/local/lib/plugin<PLUGIN>/"





先の:ブートストラップテーブルでJsonの値を取得できません
次に:クエリ結果をJson形式のスクリプト共有に変換する
掲載地 2019/06/01 2:16:47 |
共有してくれてありがとう
 地主| 掲載地 2021/02/07 10:01:20 |
MySQLはクエリ結果をファイルにエクスポートします
https://www.itsvse.com/thread-9557-1-1.html
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com