mysqldump を使用して MySQL データをバックアップする方法

mysqldump を使用して MySQL データをバックアップする方法

1. mysqldump の紹介

mysqldump は、MySQL に付属する論理バックアップ ツールです。 MySQLdump は、1 つ以上の MySQL データベースをバックアップしたり、他の MySQL サーバーにデータを転送したりするために使用できるデータベース論理バックアップ プログラムです。 mysqldump を実行する場合、アカウントにはデータ テーブルをバックアップするための select 権限、ビューをバックアップするための show view 権限、トリガーをバックアップするための trigger 権限などが必要です。

mysqldump は、バックアップ機能を実装するために SQL ステートメントを再構築する必要があるため、大規模なデータのバックアップには適していません。大量のデータを含むデータベースのバックアップと復元操作の場合、速度は比較的遅くなります。mysqldump バックアップを開くと、実際にはデータベース SQL ステートメントの再現が含まれていることがわかります。

そのバックアップの原理は、プロトコルを介して MySQL データベースに接続し、バックアップする必要があるデータを照会し、照会されたデータを対応する挿入ステートメントに変換することです。これらのデータを復元する必要がある場合は、これらの挿入ステートメントを実行するだけで、対応するデータを復元できます。

2. バックアップコマンド

2.1 コマンド形式

mysqldump [オプション] データベース名 [テーブル名] > スクリプト名

または

mysqldump [オプション] --データベース名 [オプション テーブル名] > スクリプト名

または

mysqldump [オプション] --all-databases [オプション] > スクリプト名

2.2 オプションの説明

パラメータ名略語意味
- ホスト-hサーバーIPアドレス
- ポート-Pサーバーポート番号
- ユーザー-うMySQL ユーザー名
--パスワード-p MySQLパスワード
--データベースバックアップするデータベースを指定する
--すべてのデータベースMySQLサーバー上のすべてのデータベースをバックアップする
- コンパクト圧縮モード、出力が少ない
--コメント注釈情報を追加する
--完全な挿入完了した挿入ステートメントを出力する
--ロックテーブルバックアップする前に、すべてのデータベーステーブルをロックします
--no-create-db/--no-create-infoデータベース作成ステートメントの生成を無効にする
- 力エラーが発生してもバックアップ操作を続行する
--デフォルト文字セットデフォルトの文字セットを指定する
--ロックを追加するバックアップ中にデータベーステーブルをロックする

2.3 例

すべてのデータベースをバックアップします。

mysqldump -uroot -p --all-databases > /backup/mysqldump/all.db

指定されたデータベースをバックアップします。

mysqldump -uroot -p テスト > /backup/mysqldump/test.db

指定したデータベースとテーブルをバックアップします(複数のテーブルはスペースで区切られます)

mysqldump -uroot -p mysql db イベント > /backup/mysqldump/2table.db

特定のテーブルを除いて指定されたデータベースをバックアップします

mysqldump -uroot -p test --ignore-table=test.t1 --ignore-table=test.t2 > /backup/mysqldump/test2.db

3. 復元コマンド

3.1 システムコマンドライン

mysqladmin -uroot -p db_name を作成します 

mysql -uroot -p db_name < /backup/mysqldump/db_name.db

注意: バックアップ データベースをインポートする前に、db_name が存在しない場合は作成する必要があります。また、データベース名が db_name.db 内のデータベース名と同じ場合にのみインポートできます。

3.2 ソースメソッド

mysql > db_nameを使用する

mysql > ソース /backup/mysqldump/db_name.db

付録: よく使われるコマンド

mysqldump -u root -p --all-databases > D:/mysql.sql #すべてのデータベースをバックアップmysqldump -uroot -p123456 --databases db1 db2 db3 > D:/mysql.sql #複数のデータベースをバックアップmysqldump -hhostname -Pport -uroot -p"123456" --databases dbname > D:/mysql.sql #リモート バックアップ (リモートの場合は、-h: ホスト名、-P: ポート番号を追加する必要があります)



# 条件付きで指定されたテーブルのデータの一部をエクスポートします。mysqldump エクスポートのデフォルトのタイムゾーンは +00:00 であることに注意してください。w の後のタイムスタンプ時間も +00:00 タイムゾーンのデータとみなされ、データに問題が生じます。mysqldump -h222.222.221.197 -uroot -proot DBname TABLEname -t --complete-insert --skip-tz-utc -w"sys_create > '2020-12-25 16:00:00'">export.sql   



# データベースを一度にエクスポートおよびインポートします (!!! 2 つのサーバーが逆に記述されている場合は、エクスポートされた SQL に drop table ステートメントがあるため、大惨事になるので注意して使用してください)

mysqldump --host=h1 -uroot -proot --databases db1 |mysql --host=h2 -uroot -proot db2 



#圧縮パッケージとしてエクスポートすると、サイズがかなり小さくなります。オンライン サーバーではこれを使用してみてください。お勧めです! ! !

mysqldump --opt -uroot -p123456 -h127.0.0.1 --databases dbname --ignore-table=dbname.table1 | gzip>/db_back/dbname_`date +%F`.zip

要約する

これで、MySQL データのバックアップに mysqldump を使用する方法についての記事は終了です。MySQL mysqldump の使用に関する詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL mysqldump コマンドの使用方法の詳細な説明
  • mysqldump を使用して指定したテーブルをバックアップおよび復元する方法
  • mysqldump を使用して MySQL データベースからデータをエクスポートする方法の詳細な説明
  • mysql mysqldump データのバックアップと増分バックアップ
  • mysqldumpデータエクスポートの問題に関する詳細な議論
  • mysqldump データベース バックアップ パラメータの詳細な説明
  • mysqldump に -w パラメータを追加してデータをバックアップする場合の注意点
  • mysql のバックアップと復元 mysqldump.exe の一般的な使用例

<<:  div要素に丸い境界線を追加する方法

>>:  Linux の圧縮および解凍コマンドの紹介

推薦する

CentOS8 ネットワークカード設定ファイル

1. はじめにCentOS8 システムの更新、新しいバージョンは人々に非常に快適に感じさせます。 こ...

鏡像効果を実現する JavaScript キャンバス

この記事では、JavaScriptキャンバスでミラーイメージ効果を実現するための具体的なコードを参考...

JavaScriptはオブジェクトの不要なプロパティを削除します

目次例方法1: 削除方法2: 分解補充する要約するThinking シリーズは、10 分で実用的なプ...

Dockerのプロセスとイメージを実行するための基本コマンドの詳細な説明

目次1. ワークフローを実行する2. ミラーリングの基本コマンド1. ワークフローを実行するDock...

Apache をインストールした後、サービスを開始できません (サービスを開始するとエラー コード 1 が表示されます)

目次1. エラーメッセージ2. エラーの原因3. 解決策1. エラーメッセージ1. インストール後、...

Webフロントエンド開発エンジニアが習得すべきコアスキル

Web フロントエンド開発に含まれる内容は、主に W3C 標準の構造、動作、パフォーマンスです。では...

MySQL で '%' を含むフィールドをクエリする方法の詳細な説明 (ESCAPE の使用法)

SQLのlike文では、例えば SELECT * FROM user WHERE username...

JavaScript でのモグラ叩きゲームの実装

この記事では、モグラ叩きゲームを実装するためのJavaScriptの具体的なコードを参考までに紹介し...

Vuexはセッションストレージデータを結合して、ページを更新するときにデータが失われる問題を解決します

目次序文1. 理由: 2. 解決策のアイデア: 1. ローカル保存方法: 2. 実装手順: 3. 最...

Vueはスクロールバースタイルを実装します

最初はブラウザのスクロールバーのスタイルを変更して効果を実現したいと思っていましたが、情報を調べてみ...

IntelliJ IDEA で Java を使用して MySQL データベースに接続する方法の詳細な説明

1. MySQLデータベースをダウンロードし、インストールして設定するダウンロードアドレス: htt...

Docker での FastAPI デプロイの詳細なプロセス

Docker 学習https://www.cnblogs.com/poloyy/p/15257059...

スクロールバーのスタイルを設定するための CSS サンプルコード

スクロール バーのスタイルを設定するための CSS 実装コードは次のとおりです。 •::-webki...

Vue Element フロントエンドアプリケーション開発 テーブルリスト表示

1. リストクエリインターフェースの効果コード処理ロジックを紹介する前に、まずは感覚的に理解し、レン...

MySQL にテキストと画像を保存する方法

Oracle の大きなテキスト データ型 Clob 長いテキスト型 (MySQL ではサポートされて...