MySQL データベースを手動および自動でバックアップする 8 つの方法

MySQL データベースを手動および自動でバックアップする 8 つの方法

MySQL は人気のオープンソースデータベース管理システムとして多くのユーザーが利用しています。データのセキュリティを維持するために、データのバックアップは不可欠です。この記事では、企業に適したいくつかのデータバックアップ方法を紹介します。

MySQLDump を使用した MySQL バックアップ

mysqldump は MySQL の組み込みツールであり、ユーザーはこれを使用してデータベースをファイル、サーバー、さらには圧縮された gzip ファイルにバックアップするためのさまざまなオプションを指定できます。 mysqldump ユーティリティは柔軟性があり、高速で、高度なバックアップを実行し、ユーザーがデータベースのバックアップ方法を変更できるようにするさまざまなコマンドライン パラメータを受け入れます。

mysqldump ユーティリティは、Windows オペレーティング システムでは c:mysqlbin、Unix/Linux システムでは /usr/local/mysql/bin にあります。mysqldump ユーティリティにさまざまなパラメータを渡すと、次の形式で使用できます。

mysqldump ---user [ユーザー名] ---password= [パスワード]
[データベース名] > [ダンプファイル]

手動バックアップの場合、MySQL データベースのパスワードのみが必要です。パスワードとして p オプションを使用して、mysqldump にコマンドを送信します。たとえば、すべてのデータベースをバックアップするには、all databases を使用します。

mysqldump –u USER –p –all-databases> /mnt/backups/all

MySQLpump を使用した MySQL バックアップ

MySQLpump は mysqldump に似ており、並列化をサポートする論理バックアップを生成します。 MySQLpump は、複数のデータベースのすべてのダンプ関連操作を並行して実行するため、論理バックアップの実行にかかる時間が大幅に短縮されます。

ただし、MySQLpump は performance_schema、sys schema、および ndbinfo をバックアップしないため、--databases を使用してそれらの名前を付ける必要があります。また、ユーザー アカウント定義もダンプされません。

シェル> mysqlpump –exclude-databases=% --users

AutoMySQLBackup による MySQL バックアップ

AutoMySQLBackup は、サーバー上の単一、複数、またはすべてのデータベースをバックアップできます。各データベースは個別のファイルに保存され、圧縮できます。実行方法は? bash スクリプトのファイルをダウンロードして保存し、好みに合わせてカスタマイズして実行可能にするだけです。

スクリプトを手動で実行します: ./automysqlbackup.sh.2.5

このスクリプトはバックアップ フォルダーをリモートの場所に保存することをサポートしていないため、リモート スペースをマウントするか、別の手法を使用してファイルをリモートでアップロードする必要がある場合があります。

mydumper を使用した MySQL バックアップ

Mydumper は、高速で信頼性の高いマルチスレッド MySQL バックアップ プロセスを保証する実用的なソフトウェア プログラムです。 Mydumper は並列処理を提供し、大規模なデータベースを非常にうまく処理することで知られています。ユーザーは、以下に示すようにバックアップを作成し、変数 ($) を実際の変数に置き換え、フォルダーを zip 形式で圧縮して、希望する場所に配置する必要があります。

マイダンパー

--database=$DB_NAME

--host=$DB_HOST

--user=$DB_PASS

--行数=500000

--圧縮

--空のファイルを作成する

--圧縮プロトコル

高速かつ自動的なバックアップ

ottomatik による MySQL 自動バックアップ

Ottomatik は、バックアップ パラシュートを使用して MySQL データベースに優れたバックアップ ソリューションを提供します。 Ottomatik はクラウドまたはローカル サーバーをサポートします。インストール スクリプトにより、Linux サーバーに接続するための SSH キーが自動的にインストールされます。バックアップ ジョブに複数のサーバーを選択することもできます。

PHPMyAdmin を使用した MySQL バックアップ

PHPMyAdmin は、無料で使用できる MySQL データベースを管理するための人気のアプリケーションです。多くのサービスプロバイダーは PHPMyAdmin を使用しており、気付かないうちにインストールされている可能性があります。

データベースをバックアップするには、PHPMyAdmin を開いて、ファイルまたはフォルダを選択し、「エクスポート」リンクをクリックするだけです。また、データをローカルに保存するための「名前を付けて保存」や「圧縮」などのオプションもあります。

ファイルシステムスナップショットを使用したMySQLバックアップ

システム スナップショットは、Veritas、LVM、ZFS などのファイル システムを使用して作成できます。ファイル システム スナップショットを使用するには、クライアント プログラムから読み取りロック付きの flush tables を実行し、別のシェルから mount vxfs snapshot を実行します。最初のクライアントからテーブルのロックを解除し、スナップショットからターゲット フォルダーにファイルをコピーして、後でスナップショットをアンマウントします。

テーブルファイルのコピーによるバックアップ

テーブル ファイルを *.MYD、*.MYI ファイルにコピーして、MyISAM テーブルをバックアップします。使用するときは、サーバーを停止するか、関連するテーブルをロックして更新する必要があります。

FLUSH TABLES tbl_list WITH READ LOCK;

読み取りロックにより、ファイルがデータベース内にコピーされている間も他のクライアントがテーブルをクエリし続けることができ、フラッシュにより、バックアップ プロセスの前にすべてのアクティブなインデックス ページがディスクに書き込まれることが保証されます。

完全バックアップでも増分バックアップでも、MySQL データベースのバックアップは不可欠であり、データベースのサイズが大きくなるにつれて、バックアップ戦略を変更する必要が生じる場合もあります。

要約する

上記は、編集者が紹介した MySQL データベースの手動および自動バックアップの 8 つの方法です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Windows での MySQL 自動バックアップのバッチ処理の実装 (ディレクトリのコピーまたは mysqldump バックアップ)
  • MySQLdump コマンドを使用した MySQL データの移行
  • mysql バックアップ スクリプト mysqldump の使い方の詳細な説明
  • Linux mysqldump によるデータベース、データ、テーブル構造のエクスポートの詳細な説明
  • mysqldumpデータエクスポートの問題に関する詳細な議論
  • mysqldump (MySQL データベースのバックアップとリカバリ) の使用方法についての簡単な説明
  • LinuxはMySQLデータベースの自動バックアップとスケジュールバックアップを毎日実装しています
  • MySQL 自動バックアップとリカバリのいくつかの方法の詳細な説明 (グラフィック チュートリアル)
  • CentOS システムで MySQL の自動毎日バックアップを設定する方法
  • Centos7 で mysqldump を使用して MySQL データベースの毎日の自動バックアップを作成する

<<:  Linux サーバーが処理できる接続数をご存知ですか?

>>:  Vueカスタムコンポーネントはイベント修飾子を使用してピットレコードを踏む

推薦する

Dockerコンテナのネットワーク管理とネットワーク分離の実装

1. Dockerネットワーク管理1. Dockerコンテナ方式1) Dockerが外部ネットワーク...

Apple の携帯電話のロックを解除するときに光沢のあるフォント効果を実現するために CSS3 を使用する例

0. はじめに2016 年 8 月 18 日 今日、iPhone をスライドさせてロックを解除すると...

WeChatアプレットでのwxsファイルの素晴らしい使い方をいくつか紹介します

目次序文応用フィルタードラッグファイル間での参照の受け渡しwxsはjsロジック層にパラメータを渡しま...

Java+Tomcat 環境の展開とインストールのプロセス図

次に、Centos7 に Java+Tomcat をインストールします。インターネット上には多くの記...

Linux サーバーで MySQL リモート接続を有効にする方法

序文以前の非MKレコードを再編成するためのMySQLの学習説明する有効になっていない場合、データベー...

docker-compose で Jenkins をインストールする際の実践的なメモ

ディレクトリを作成する cd /usr/local/docker/ jenkins-docker を...

入力のid属性とname属性の違いの例

長い間ウェブサイトを作ってきましたが、入力時のnameとidの違いがまだわかりません。最近jQuer...

MySQL の起動オプションとシステム変数の例の詳細な説明

目次ブートオプションコマンドラインパラメータの長い形式と短い形式設定ファイル構成グループシステム変数...

MySQL の基本: グループ化関数、集計関数、グループ化クエリの詳細な説明

目次1. 使い方が簡単2. DISTINCTを使用して重複を削除する3. COUNT()の詳細な紹介...

jsはreduceメソッドを使用してコードをよりエレガントにします

序文実際のプロジェクトでは、最も一般的な処理は計算とループロジックである可能性があります。配列でre...

HTML でスクロールバーを非表示にしたり削除したりする方法

1. 属性付きHTMLタグXML/HTML コードコンテンツをクリップボードにコピー< htm...

Linuxはiptablesを使用して複数のIPからのサーバーへのアクセスを制限します

序文Linux カーネルでは、netfilter は、パケット フィルタリング、ネットワーク アドレ...

Linux viコマンドの知識ポイントと使い方のまとめ

Linux viコマンドの詳しい説明vi エディタは、すべての Unix および Linux システ...

Dockerは異常なコンテナ操作を排除する

この初心者は、Docker を学び始めたばかりの頃にこのような問題に遭遇しました。記録しておきます。...

MySQL InnoDB MRR 最適化ガイド

序文MRR は Multi-Range Read の略で、ランダム ディスク アクセスを削減し、ラン...