Linux でリモートから MySQL を自動的にバックアップする方法

Linux でリモートから MySQL を自動的にバックアップする方法

序文:

基本的に、自社で使用する場合でも、顧客向けにサーバーを展開する場合でも、MySQL のバックアップは不可欠な部分です。ここでは、Linux で自動オフサイト バックアップを実現する方法を紹介します。

  • mysql_backup.shはデータのバックアップに使用されます
  • mysql_restore.shはデータの復元に使用されます
  • remove_backup.shは、一定期間前のバックアップファイルを削除するために使用されます。

1. データのバックアップの準備

1.1 バックアップディレクトリを作成する

注: ここでは、バックアップファイルを/data/backup/mysqlの下に置き、スクリプトを/data/backupの下に置きます。

フォルダを作成します(すでに作成されている場合は無視してください)

mkdir -p /data/backup/mysql
cd /データ/バックアップ

1.2 スクリプトファイルを作成する

mysql_backup.sh スクリプトを作成する

vi mysql_backup.sh

次のスクリプトの内容を貼り付けます

#!/bin/bash
# 必要に応じて自分で変更してください #db_user='root'
#db_password=`cat /data/www/mysql_password`
db_name='ウーチーロン'
バックアップディレクトリ='/data/backup/mysql/'
現在の時刻=$(日付 +'%Y-%m-%d_%H%M%S')
ファイルパス=$backup_dir$current_time'.sql.gz'
#$db_password $db_user はここでは使用されません。これは構成ファイルに書き込まれています echo 'データベースのエクスポートを開始します...'
mysqldump --defaults-extra-file=/data/backup/my_mysql.cnf $db_name | gzip > $filepath
echo 'エクスポート成功、ファイル名: '$filepath

現在のディレクトリ(/data/backup)に新しい設定ファイルを作成します。

vi my_mysql.cnf

以下はファイルの内容です。ここではエクスポートできるファイルサイズの上限を設定できます。

ここでのホストは、バックアップ元となるサーバーです。

[mysqlダンプ]
最大許容パケット = 400M
ホスト=IPアドレス (192.168.1.**)
ユーザー=root
パスワード='root'
[mysql]
ホスト=IPアドレス (192.168.1.**)
ユーザー=root
パスワード='root'

エクスポートされたシェル スクリプトの準備ができました。次に、それに権限を追加します。

chmod +x ./mysql_backup.sh

次のコマンドを使用してエクスポートできます

sh ./mysql_backup.sh
# 結果を確認する ll ./mysql 

要約する

Linux での MySQL 自動リモート バックアップに関するこの記事はこれで終わりです。Linux での MySQL 自動リモート バックアップの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Linux での MySQL マルチインスタンスの展開とインストール ガイド
  • Linux での MySQL 8.0.25 のインストールと設定のチュートリアル
  • Linux ホスト上で複数の MySQL データベースを起動する方法
  • Linux mysql5.5 を mysql5.7 にアップグレードする手順と落とし穴
  • Linux に mysql をインストールするときに /etc に my.cnf ファイルがない問題を解決する
  • Linux で Docker を使用して MySQL をインストールする手順
  • Linux でリモート MySQL データベースを手動で展開する方法の詳細な説明
  • Linuxでmysqlの定期的なコールドバックアップを実装するためにmysqldump+expect+crontabを使用するアイデアの詳細な説明
  • Aliyun Linux のコンパイルとインストール php7.3 tengine2.3.2 mysql8.0 redis5 プロセスの詳細な説明
  • Linux で MySQL のスケジュールバックアップを実装する方法
  • Linux mysql-5.6 でルート パスワードをリセットする方法
  • MySQL を使用してポート 3306 を開いたり変更したり、Ubuntu/Linux 環境でアクセス許可を開く
  • MySQL スケジュール バックアップ ソリューション (Linux crontab を使用)
  • Linux環境にMySQLデータベースをインストールする詳細なチュートリアル
  • Linux MySQL ルートパスワードを忘れた場合の解決方法
  • Linux で mysql-8.0.20 をインストールするための詳細なチュートリアル
  • MyCat を使用して Linux で MySQL マスター/スレーブの読み取り/書き込み分離を実装する方法

<<:  Docker の MySQL コンテナのタイムゾーン問題の修正

>>:  この記事では、CSSのようなJSモジュールをインポートする方法を説明します。

推薦する

MySQL の垂直テーブルを水平テーブルに変換する方法と最適化のチュートリアル

1. 縦型テーブルと横型テーブル垂直テーブル: テーブル内のフィールドとフィールド値はキーと値の形式...

XHTML と CSS の Web ページ作成の問題に対する解決策

XHTML CSS ページ制作中に遭遇する問題の解決策は、解決策と呼ぶには少々大げさです。せいぜい、...

altとtitleの違いの詳しい説明

これら 2 つの属性はよく使用されますが、その違いはまとめられていません。それでは、その使い方をまと...

海外の無料写真素材サイトベスト9

良い画像素材のウェブサイトを見つけるのは難しいです。特に無料です。良い写真には非常に目を引く視覚効果...

CocosCreator で http と WebSocket を使用する方法

目次1. HTTPGET 2. HTTP POSTウェブソケット4. Egretのhttpとwebs...

HTML に埋め込まれた MP4 形式のビデオが再生できないのはなぜですか?

次のコードは、私の test.html にあります。ビデオは、c:\test.html などの絶対パ...

Vue3.0 手書きカルーセル効果

この記事では、Vue3.0の手書きカルーセル効果の具体的なコードを参考までに共有します。具体的な内容...

Vueでショッピングカートのすべての機能を実装する簡単な方法

主な機能は次のとおりです。製品情報を追加する製品情報を変更する単一の製品を削除する複数の製品を削除す...

Webフロントエンドスキル概要(個人の実務経験)

1. 今日、ページを作っているときに、矢印を中央に配置する効果に遭遇しました。クリック領域を大きくし...

Vue Routerはバックグラウンドデータに応じて異なるコンポーネントをロードします

目次実際のプロジェクトで遭遇する要件実装が間違っているところもある私は個人的に、実装するより良い方法...

フレックスレイアウトは、上下固定、中間スライドのレイアウトモードを実現します。

この記事では、主に、上下固定と中スライドレイアウトを実現するためのフレックスレイアウトのレイアウト方...

SSMプロジェクトは、ホットデプロイメント構成を実装するためにTomcatとMavenを使用してWARパッケージとしてデプロイされることが多い。

背景ご存知のとおり、JavaEE プロジェクトを開発した後は、そのプロジェクトをサーバーの Tomc...

中国の専門ではない:文化の違いの中でのウェブ開発

Web デザインと開発は大変な作業なので、少数の人だけを対象に設計しないでください。これは外国人が...

Vue検証コードコンポーネントの使い方の詳しい説明

この記事の例では、vue検証コードコンポーネントで使用される具体的な実装コードを参考までに共有してい...

CSS3 における構造擬似クラスセレクターと擬似要素セレクターの使い方の詳細な説明

構造擬似クラスセレクタの紹介構造擬似クラスセレクターは、いくつかの特殊効果を処理するために使用されま...