Linux で MySQL のスケジュールバックアップを実装する方法

Linux で MySQL のスケジュールバックアップを実装する方法

実際のプロジェクトでは、緊急事態を防ぐためにデータベースを頻繁にバックアップする必要があります。しばらく前に、私のデータベースが侵入され、すべてのデータが失われました。幸いなことに、当時はテストデータベースに過ぎませんでした。しかし、この危機の後、私はこの問題に気づき始めました。

まず、テスト データベース バックアップ コマンドを記述します。

#!/bin/sh
DB_USER="ルート"
DB_PASS="1234"
DB_DATA_NAME="hzl"
BakDir="/data/mysql-data-back"
「/usr/bin/mysqldump」をエコーし​​ます
echo "------------------------------------------" >> $BakDir
echo $(date +"%y-%m-%d %H:%M:%S") >> $BakDir
 
cd $BakDir
/usr/bin/mysqldump --no-defaults -u$DB_USER -p$DB_PASS $DB_DATA_NAME|gzip > $BakDir/db_`date +%F`.gz
 
終了 0

コマンドは上記のとおり、シェル ファイルに直接書き込まれます。ファイルが正常に実行されると、ディレクトリ内にバックアップ .gz ファイルを手動で生成できます。

最初は .sh ファイルは実行できないことに注意してください。

chmod +x sqlAutoBak.sh

さて、上記は比較的簡単です。では、スクリプトを毎日自動的に実行するようにする主な部分を始めましょう。

1. crontabがインストールされているかどうかを確認する

crontab -l

実行されたスクリプトのリストが表示され、インストールが成功したことが示されます。お持ちでない場合は、オンラインでインストールチュートリアルを探してください。

[root@VM_0_4_centos ~]# crontab -l
*/1 * * * * /usr/local/qcloud/stargate/admin/start.sh > /dev/null 2>&1 &

2. crontabサービスにバックアップスクリプトを追加する

crontab -e

編集モードに入るにはaキーを押してください

0 */1 * * * /home/work/start-service.sh と入力

編集モードを終了するにはCtrl+Cを押してください

Shift+:を押してwqと入力し、crontabを終了します。

結果を見てみましょう

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、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-5.6 でルート パスワードをリセットする方法
  • MySQL を使用してポート 3306 を開いたり変更したり、Ubuntu/Linux 環境でアクセス許可を開く
  • MySQL スケジュール バックアップ ソリューション (Linux crontab を使用)
  • Linux環境にMySQLデータベースをインストールする詳細なチュートリアル
  • Linux でリモートから MySQL を自動的にバックアップする方法
  • Linux MySQL ルートパスワードを忘れた場合の解決方法
  • Linux で mysql-8.0.20 をインストールするための詳細なチュートリアル
  • MyCat を使用して Linux で MySQL マスター/スレーブの読み取り/書き込み分離を実装する方法

<<:  jsドラッグ効果の原理と実装

>>:  Nginx の起動に失敗した場合のいくつかのエラー処理の詳細な説明

推薦する

Linuxのdateコマンドの使用

1. コマンドの紹介date コマンドは、現在の時刻または指定された時刻を指定された形式で表示するた...

Linux での fuser コマンドの使用法の詳細な説明

説明する: fuser は、現在ディスク上のファイル、マウント ポイント、さらにはネットワーク ポー...

Tomcat マルチレイヤーコンテナの設計に関する簡単な説明

目次コンテナ階層サーブレットの検索を要求するプロセス仕組みTomcat のコンテナは Servlet...

Docker で Nginx イメージ サーバーを構築する方法

序文一般的な開発では、画像をディレクトリにアップロードし、ディレクトリとファイル名を連結してデータベ...

UTF8 でエンコードされた Web ページにファイルが含まれている場合の、ページの前の空白行の解決方法

<br />このページはUTF8エンコードを使用しており、ヘッダーとフッターはテンプレー...

ネイティブ js で呼び出し、適用、バインドを実装する方法

1. 呼び出しを実装するステップ:関数をオブジェクトのプロパティとして設定します。これを関数に割り当...

JavaScriptのスタックとコピーの詳細な説明

目次1. スタックの定義2. JSスタックの調査1. スタックとヒープ2. 基本型と参照型3. 値渡...

リアルタイムコンピューティングフレームワークFlinkクラスタの構築と動作メカニズムについての簡単な説明

目次1. Flinkの概要1.1 基本的な紹介1.2 アプリケーションシナリオ2. 環境の展開2.1...

MySQL 起動エラー 1067 および文字セットを変更して再起動した後の無効な回復

公式サイトからmysql-5.6.37-winx64.zipの解凍バージョンをダウンロードし、構成フ...

JavaScriptのURLオブジェクトとは何かについて話しましょう

目次概要ハッシュプロパティホストプロパティホスト名属性Href属性起源のプロパティユーザー名とパスワ...

JavaScriptの無限ループを検出して防止する方法の詳細な説明

目次序文for文の無限ループを修正while文の無限ループを修正要約する序文Js デッド ループはど...

図を使ってWeb2.0とは何かを説明する

最近はWeb2.0という言葉をよく耳にしますが、Web2.0とは何でしょうか? Web 1.0 とど...

Linux で起動時にプログラムを自動的に実行させる最も簡単な方法

たくさん集めましたが、すべて失敗に終わりました。最終的に、この方法は優れており、使用に影響を与えない...

選択ドロップダウンボックスの値をIDに渡してコードを実装する方法

完全なコードは次のとおりです。 HTMLコード:コードをコピーコードは次のとおりです。 <!-...

ウェブサイト構築経験概要

<br />注目を集めるウェブサイトを作成するには、どのような原則に従うべきでしょうか?...