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モジュールをインポートする方法を説明します。

推薦する

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

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

MySQL バックアップ スクリプトの書き方

序文:データベースのバックアップの重要性は、特にデータの損失が深刻な結果を招く可能性がある実稼働環境...

MySQLの基本操作学習ノートテーブル

テーブルを作成テーブルテーブル名を作成create table if not exists 表名 m...

CSS3 ベジェ曲線の例: リンクホバーアニメーション効果の作成

CSS3 アニメーション トランジションを使用して、リンクの上にマウスを移動すると小さなポップアップ...

HTML入力ボックスの最適化により、ユーザーエクスペリエンスと使いやすさが向上します。

ユーザーエクスペリエンスと使いやすさを向上させるために、入力ボックスなど、Web ページでユーザーが...

Node.js における npx コマンドの使用法とシナリオ分析

npx 使用チュートリアル今晩、 Vue-Cli勉強していたところ、ふと最新の@4.xxバージョンを...

MySQL 8.0.17 のインストールと設定方法のグラフィックチュートリアル

この記事では、MySQL 8.0.17のインストールと設定方法を参考までに紹介します。具体的な内容は...

HTMLページのネイティブVIDEOタグはダウンロードボタン機能を隠します

Web プロジェクトを作成しているときに、紹介ビデオが別にある紹介ページに遭遇しました。この短いビデ...

Nginx 仮想ホストの詳細な分析

目次1. 仮想ホスト1.1 仮想ホストの概念1.2 仮想ホストタイプ2. IP仮想ホストに基づく2....

背景画像にテキストを表示するためのCSS

効果: <div class="imgs"> <!-- 背景画...

MySQL で not in を使用して null 値を含める問題を解決する

知らせ! ! ! uid が (a,b,c,null) に含まれないユーザーから * を選択します。...

Vue.js ドラッグ可能なテキストボックスコンポーネントの使用方法の詳細な説明

目次コンポーネントの登録コンポーネントの追加ソースコードドラッグ可能なテキスト ボックスでは、ユーザ...

親ページの更新を制御するために HTML で iframe を実装するためのアイデアとコード

1. 応用シナリオ親ページ a.jspサブページ b.jsp (ページ a に埋め込まれた ifra...

JavaScriptエラーキャプチャの詳細な説明

目次1. 基本的な使い方とロジック2. 特徴3. エラーオブジェクト4. キャッチアンドスロー戦略の...

win10 64 ビット システムに複数の JDK バージョンをインストールする際の切り替え問題と解決策の概要

コンピューターにmyeclipse2017とidea2017がインストールされているため、ideaが...