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 の起動に失敗した場合のいくつかのエラー処理の詳細な説明

推薦する

MySQL インジェクションにおける outfile、dumpfile、load_file 関数の詳細な説明

SQL インジェクション脆弱性を悪用する後期段階では、MySQL のファイル シリーズ関数を使用して...

JSは画像の滝の流れの効果を実現します

この記事では、画像ウォーターフォールフローを実現するためのJSの具体的なコードを参考までに共有します...

React+TS を使用したシンプルな Jira プロジェクトを実装するためのベスト プラクティス

トレーニングのための一連のプロジェクト反応+ts内容は少ないですが、フックのカプセル化、ts ジェネ...

スクラッチ宝くじの例を実現する JavaScript キャンバス

この記事では、スクラッチ効果を実現するためのJavaScriptキャンバスの具体的なコードを参考まで...

Vue はカードフリップカルーセル表示を実装します

Vueカードのフリップカルーセル表示、フリップ時にデータを切り替えながら、参考までに、具体的な内容は...

MySQLデータベースの追加、削除、変更操作の詳細な説明

データの挿入テーブル名(列名1、列名2、列名3)の値(値1、値2、値3)に挿入します。ユーザーに(u...

CentOS 7.4 で MySQL 5.7.28 バイナリモードをインストールする方法

Linuxシステムバージョン: CentOS7.4 MySQL バージョン: 5.7.28 Linu...

ウェブデザインにおけるグリッドシステム

グリッドシステムの形成1692年、新しく即位したフランス国王ルイ14世は、フランスの印刷技術のレベル...

MySQL挿入パフォーマンスを最適化する方法の例

MySQL パフォーマンスの最適化MySQL パフォーマンスの最適化とは、リソースを合理的に配置し、...

Mysqlリモート接続構成を実装する2つの方法

Mysqlリモート接続構成を実装する2つの方法会社で働いていると、誰かのコンピュータに保存されている...

ubuntu16.04 で nginx を完全にアンインストールするための関連コマンド

nginx の概要nginx は、無料のオープンソースの高性能 HTTP サーバーおよびリバース プ...

CSSスクロールバースタイル設定の実装

Webkit スクロールバー スタイルのリセット1. スクロールバーには、スクロールバー ボタンとト...

Vue3 での Teleport の使用に関する詳細な説明

目次テレポートの目的テレポートの仕組みこの記事では、以下の内容を取り上げます。テレポートの目的テレポ...

ウェブデザインで注意すべき検索最適化の知識

1. 新サイトホームページのリンクレイアウト1. リンク配置の位置:リンク配置の位置によって、リンク...

要素を中央に配置するための配置方法 (Web ページ レイアウトのヒント)

ブラウザウィンドウの中央に要素を配置する方法まず、コード ブロックを示します。すでにコードを理解して...