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 画像で埋め、コンテナのサイズを調整する方法

推薦する

MYSQL から MARIADB へのプロジェクト移行に関するチュートリアル

データベース (MySQL) を準備します。すでに MySQL をお持ちの場合は、これを無視できます...

vue で wangEditor を使用する方法と、データをエコーし​​てフォーカスを取得する方法

バックグラウンド管理プロジェクトを行う際には、リッチテキストエディタがよく使用されます。ここでは、非...

HTMLのタグと要素の違いの詳細な説明

ウェブページに慣れていない友人の多くは私と同じように、HTML で要素、タグ、属性がどのように定義さ...

docker-compose を使用して Clickhouse をすばやくデプロイする方法のチュートリアル

ClickHouse は、オープンソースの列指向 DBMS (Yandex によって開発) です。 ...

Uniappの小規模プログラム開発経験

1. 新しいUIプロジェクトを作成するまず、私たちの UI は ColorUI に基づいています。C...

デザインにおけるユーザーエクスペリエンスの背後にある8つのユーザー本能について話す

編集者注: この記事は、Teambition チームの @娄昊川 が寄稿したものです。Teambit...

Dockerfileを使用してDockerイメージを構築する

目次Dockerfileを使用してDockerイメージを構築する1. Dockerfile とは何で...

絵文字と問題解決のためのMySQL/Javaサーバーサポートの詳細な説明

この記事では、絵文字用の MySQL Java サーバーのサポートと問題解決方法について説明します。...

水平ヒストグラムを作成するための MySQL ソリューション

序文ヒストグラムは、RDBMS によって提供される基本的な統計情報です。最も一般的に使用されるのは、...

MySQLデータベースのマスタースレーブレプリケーションの長い遅延に対する解決策

序文MySQL マスター スレーブ レプリケーションの遅延は、業界では長年の問題となっています。遅延...

MySQL で explain ステートメントを使用する基本的なチュートリアル

目次1. 概要1. 説明文テスト2. 結果の各列の説明2. ID列の説明1. 環境整備2. expl...

ubuntu20.04 上の CLion2020.1.3 での ROS のインストールと設定の詳細な説明

1. CLionをダウンロード、インストール、アクティベートするオンラインで提供されるチュートリアル...

スライド階段効果を実現するjQuery

この記事では、階段スライド効果を実現するためのjQueryの具体的なコードを参考までに紹介します。具...

シングルサインオン制御を実装するためのVueの完全なコード

参考までに、Vue シングル サインオンのデモをご紹介します。詳細を知りたい方のお役に立てれば幸いで...

ウェブデザインにおけるキーワード設計手法の紹介

多くの場合、ホームページを作成するときに、Web ページ ヘッダー属性の設定を無視します。 Web ...