Linux でのデータベースのスケジュールバックアップの実装スクリプト

Linux でのデータベースのスケジュールバックアップの実装スクリプト

シナリオ: サーバーデータベースを毎日定期的にバックアップする必要がある

1. まずバックアップスクリプトの場所を決定する

私はそれを/usr/local/backupに置き、bkDatabase.shという名前を付けました。

2. シェルスクリプトを書く

# 注意すべき点がいくつかあります# 1. -password パスワードに括弧またはアンダースコアが含まれている場合は、パスワードを二重引用符で囲んでください# 2. このスクリプトは、データベース course1 をバックアップして圧縮します# 3. バックアップ ファイルの名前は course で、タイムスタンプが付けられますmysqldump -uroot -ppassword course1 | gzip > /usr/local/backup/course_$(date +%Y%m%d_%H%M%S).sql.gz

3. bashに権限を追加する

chmod u+x bkDatabase.sh

4. スクリプトが正しく実行可能かどうかをテストする

./bkデータベース.sh

5. スケジュールされたタスクを開く

# スケジュールされたタスクを初めて設定する場合、スケジュールされたタスクを編集するためにvimを入力するように求められる場合があります。基本を選択すると、crontab -eを使用できます。

6. 編集コンテンツ

以下に示すように、ここに 3 つのタスクがスケジュールされています。

2番目

# 1分ごとに実行されることを示します。実行されるスクリプトは /usr/local/backup/bkDatabase.sh です。
*/1 * * * * /usr/local/backup/bkDatabase.sh

7. スケジュールされたタスクを表示するcrontab -l

追加が成功したかどうかを確認できます(図を参照)。

バックアップディレクトリでバックアップが成功したかどうかを確認します

8. 穴に足を踏み入れる

スケジュールされたタスクの一部が終了しています。コマンドservice crond statusを使用して、 crondが正常かどうかを確認してください。

正常であればそのまま無視してください。起動しない場合は一度再起動してください。

Linuxのバージョンによって、ディストリビューションにはこのサービスがあります

サービスの再起動コマンド: [root@centos6 /]# service crond restart
サービスコマンドの開始: [root@centos6 /]# service crond start
サービスを停止するコマンド: [root@centos6 /]# service crond stop

ディストリビューションにはこのサービスがありません

サービスを停止: [root@centos6 /]# /etc/init.d/cron stop
サービスを開始します: [root@centos6 /]# /etc/init.d/cron start

サーバーデータの復元

ここには落とし穴が多すぎるので、gz ファイルの解凍方法に注意してください。 ! !

1. まず、スケジュールされたタスクによってバックアップされたデータを解凍します

上記で生成されたcourse_20190511_214326.sql.gzは解凍されていることに注意してください。

# gz ファイルを解凍して course_20190511_214326.sql ファイルを生成します gunzip course_20190511_214326.sql.gz

2. 次にデータをデータベースにインポートします

ターゲット サーバーに必要なデータベースがない場合、データベース ターゲット データベースを作成する必要があります。

# バックアップファイル sql を < 記号を介してコーステーブルに送信します。mysql -u root -p は、mysql データベースの使用を示します。mysql -u root -p course< course_20190511_214326.sql

次にパスワードを入力するように求められます。インポートするMySQLパスワードを入力してください。

上記は、Linux でスケジュールされたデータベース バックアップを実装する方法の詳細です。Linux でのスケジュールされたデータベース バックアップの詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Linux で毎日データベースの自動バックアップを設定する方法
  • LinuxはMySQLデータベースの自動バックアップとスケジュールバックアップを毎日実装しています
  • Linux で MySQL データベースを毎日自動的にバックアップする方法
  • Linux で MySQL データベースのスケジュールされたバックアップを実装する簡単な方法
  • Linux は定期的に MySQL データベースをバックアップし、以前のバックアップ ファイルを削除します (推奨)

<<:  優れた UI (ユーザー インターフェース) デザイナーになるための 20 の道標

>>:  CSS を使用して親コンテナ div を img 画像で埋め、コンテナのサイズを調整する方法

推薦する

Linux での NTP サーバー設定の詳細な手順

目次1. 環境設定1.NTPサーバー2. ビジネスサーバー2. NTPサーバーの設定1. chron...

JavaScript でよく使われるいくつかの文字列メソッドの概要 (初心者必読)

JavaScriptでよく使われるいくつかの文字列メソッド文字列は読み取り専用データです。よく使用...

CSS スタイル分類入門(基礎知識)

CSSスタイルの分類1. 内部スタイル ---- インラインスタイルスタイルタグの使用 <ス...

Ubuntu 18.04 のログインループ/ブートインターフェイスで停止/グラフィカルインターフェイスに入ることができない問題を解決する方法

原因: NVIDIA グラフィック カード ドライバーが破損している解決:コマンドラインモードで再起...

Apache、Tomcat、Nginx サーバーの詳細な理解と比較分析

質問1件会社のサーバーはApacheを使用しており、バックエンドはPHP、サーバーはLinux C/...

CSS変数を使用して、クールで素晴らしいフローティング効果を実現します。

最近、Grover の Web サイトで楽しいホバー アニメーションを見つけ、自分自身のインスピレー...

Ubuntu で起動時に自動的に起動するシェル スクリプトを作成する (推奨)

スクリプトを書く目的は、さまざまなサービスを手動で起動しなくて済むようにすることです(怠惰のためでも...

Kubernetes オブジェクトボリュームの詳細な使用方法

概要ボリュームは、さまざまなストレージ リソースを抽象化および仮想化したものです。ストレージ リソー...

Vue コードの読みやすさに関するいくつかの提案

目次1. コンポーネントをうまく活用してコードを整理する1. UIコンポーネントを抽出する2. モジ...

Nginx を使用してグレースケール リリースを実装する

グレースケールリリースとは、白と黒をスムーズに移行できるリリース方法を指します。 ABテストとは、グ...

MySQL レプリケーション問題の 3 つのパラメータの分析

目次01 sql_slave_skip_counter パラメータ02 スレーブスキップエラーパラメ...

Docker パッケージング ノード プロジェクトのプロセスの説明

バックエンド プログラマーとして、フロントエンドのものをいじらなければならないこともあります。そこで...

Dockerコンテナの自動終了を停止する方法の詳細な説明

この記事では、Docker コンテナとフロントエンド プロセスの関係と、コンテナを永続的に実行できる...

CentOS7環境でDockerを使ってPHP動作環境を構築する手順を詳しく解説

関連記事: CentOS7でyumを使用してDockerをインストールするDockerを使ってWin...

JS はデータ URL をどのように理解するのでしょうか?

目次概要データ URL の使用を開始するデータURL構文複数言語の文字列のBase64エンコードとデ...