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カスタムコンポーネントはイベント修飾子を使用してピットレコードを踏む

推薦する

Webフォーム作成スキル

実際、上記の 3 つの表はいずれも 3 行 3 列です。区切り線を非表示にするコツはルールにあります...

Dockerfile 内の予約語命令の解析処理

目次1. Dockerfile とは何ですか? 2. Dockerfile構築プロセスの分析3. D...

Nginx プロキシ転送構成を通じてクロスドメイン API プロキシ転送を実装する方法

序文WEB 開発では、クロスドメイン リクエストが頻繁に発生します。クロスドメインの問題を解決する方...

nginxでイメージサーバーを構築する手順の詳しい説明(ルートとエイリアスの違い)

インストール手順は省略します( yum -y install nginx;を使用して直接インストール...

ZabbixはPSK共有キーを使用してサーバーとエージェント間の通信を暗号化します。

Zabbix バージョン 3.0 以降、Zabbix サーバー、Zabbix プロキシ、Zabbi...

MySQL のタイムスタンプと日付時刻のタイムゾーンの問題によって生じる DTS の落とし穴の詳細な説明

目次MySQL で現在の時刻を表現するにはどうすればよいでしょうか?結論は確認するピットMySQL ...

Centos 7 mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar の簡単な分析

Baiduクラウドディスク:リンク: https://pan.baidu.com/s/1hv5rUW...

JavaScript でモバイル モーダル ボックスの効果を実現

この記事では、モバイルモーダルボックス効果を実現するためのJavaScriptの具体的なコードを参考...

MySQLクエリ最適化プロセスを理解する

目次パーサーとプリプロセッサクエリオプティマイザーMySQL クエリの最適化には、解析、前処理、最適...

最小限のルートファイルシステムを構築するためにbusyboxを移植するための詳細な手順

Busybox: 小さなコマンドが詰まったスイスアーミーナイフ。ステップ1: ディレクトリ構造を作成...

CentOS8.1 で Gitlab サーバーを構築するための詳細なチュートリアル

Gitlab と Github の違いについては、あまり説明する必要はありません。一言でまとめると、...

HttpとHttpsの両方をサポートするNginxの詳細な設定

最近の Web サイトでは Https をサポートすることがほぼ標準機能となっており、Nginx は...

Maven モードで Tomcat ソースコードを実行する方法

序文最近、Tomcat の起動プロセスを分析していました。Tomcat のソース コードはアイデア次...

Hadoop を使用せずに Linux 環境に Spark のスタンドアロン バージョンをインストールする方法

ビッグデータはますます注目を集めており、ビッグデータのいくつかの構成要素に精通していないと、自慢でき...

CSS スタイルで一般的なグラフィック効果を示すサンプルコード

一般的な基本グラフィックと私が遭遇するいくつかの小さなアイコンについて簡単に説明します。以下は CS...