Linux サーバーのスクリプトを自動的にバックアップする方法 (mysql、添付ファイルのバックアップ)

Linux サーバーのスクリプトを自動的にバックアップする方法 (mysql、添付ファイルのバックアップ)

1.backup.shスクリプトファイルを作成する

#!/bin/sh
ソースフォルダ=/データ
DB_FOLDER=/data/db
バックアップフォルダ=/data/backup
TM=`日付 +%Y%m%d%H%M%S`
echo start を実行して、$TM で MySQL データベースとバックアップ ファイルをダンプします。
# 古いSQLバックアップファイルを削除する
$DB_FOLDER をコピー
rm -rf $DB_FOLDER/*.sql
#mysql データをダンプする
/usr/bin/mysqldump -h127.0.0.1 -uroot -pcz_pims@2018 --single-transaction --master-data=2 --databases ms > ms-$TM.sql
echo dump db pims_hf を pims_hf-$TM.sql として出力します。
/usr/bin/mysqldump -h127.0.0.1 -uroot -ppass --single-transaction --master-data=2 --databases ms_workflow > pims_hf_workflow-$TM.sql
echo dump db ms_workflow を pims_hf_workflow-$TM.sql として出力します。
/usr/bin/mysqldump -h127.0.0.1 -uroot -ppass --single-transaction --master-data=2 --databases ファイル > files-$TM.sql
echo dump db filesrv を files-$TM.sql として出力します
# 今日より30日前のバックアップファイルを削除します
$BACKUP_FOLDER/* を検索 -type f -mtime +30 -name "*.zip" -exec rm {} \;
# 圧縮
$SOURCE_FOLDER をコピー
zip -q -r $BACKUP_FOLDER/db-$TM.zip db
zip -q -r $BACKUP_FOLDER/files-new.zip ファイル
echo $SOURCE_FOLDER ファイルを zip し、$BACKUP_FOLDER にバックアップします。終了
# システム メソッドを呼び出して、通知メッセージを Dingding 通知に送信します curl -X POST -d "templateCode=003&content=ファイルのバックアップが成功しました。バックアップ ファイルは、次のディレクトリに保存されます: $BACKUP_FOLDER" http://127.0.0.1:8080/admin/do/notify/dingding
echo -e $TM '\n\n\n' のバックアップ ファイルを終了します

2. スケジュールされたタスクを作成する

1) コマンドラインに crontab -e と入力し、対応するタスクを追加して保存して終了します。
2) /etc/crontab ファイルを直接編集し (つまり、vi /etc/crontab)、対応するタスクを追加します。

crontab ファイルの形式:

* * * * * 指示

分 時間 日 月 週 コマンド

分 時間 日 月 曜日 コマンド

たとえば、バックアップ スクリプトは毎週、毎月、毎日 1:00 に実行され、ログは backup.log ファイルに保存されます。

0 1 * * * /bin/sh /home/script/backup.sh >> /home/script/backup.log 2>&1

テストスクリプトが正常に実行された場合は、手動でテストを実行できます。

3) 現在のユーザーのスケジュールされたタスクを照会します。

要約する

上記は、編集者が紹介した Linux サーバーの自動バックアップ スクリプト (mysql、添付ファイルのバックアップ) の方法です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • MySQL バックアップ スクリプトの書き方
  • MySQLのバックアップとリカバリの簡単な分析
  • MySQLのバックアップとリカバリの詳細な説明
  • MySQL スケジュール バックアップ ソリューション (Linux crontab を使用)
  • MySQL スケジュールバックアップタスクの簡単な分析
  • Linux は定期的に MySQL データベースをバックアップし、以前のバックアップ ファイルを削除します (推奨)
  • CentOS7 で MySQL のスケジュールされた自動バックアップを実装する方法
  • Mysql 複数データベースのバックアップ コード例
  • MySQL アカウント情報をエレガントにバックアップする方法

<<:  カルーセルアニメーションを実現するVueコンポーネント

>>:  mysqlとnavicat間の接続を確立する際の1251エラーを解決する

推薦する

MySQLがOracleのnvlと同様の機能を持つことができるかどうかについての簡単な議論

isnullの代わりにifnullを使用するisnull は、null かどうかを判断するために使用...

Docker ベースの MySQL マスタースレーブ レプリケーションを実装する方法

序文MySQL マスター/スレーブ レプリケーションは、アプリケーションの高パフォーマンスと高可用性...

ViteでReactプロジェクトを構築する方法

目次序文Viteプロジェクトを作成する改修プロジェクトディレクトリの規則その他の構成序文毎日鳩、火ば...

MySQL 8.0の落とし穴の詳細な説明

本日、MySQL 8.0 をアップデートしました。最初の問題: Navicatがデータベースに接続で...

MySQLに必要な共通知識のまとめ

目次主キー制約一意の主キー非 Null 制約デフォルトの制約外部キー制約1NF 2NF 3NFデータ...

IdeaはリモートDockerをデプロイし、ファイルを構成する

1. LinuxサーバーのDocker構成ファイルを変更する vim /usr/lib/system...

JavaScript の基本変数

目次1. 変数の概要1.1 変数のメモリへの保存1.2 変数の使用1. 変数を宣言する2. 譲渡3....

CSS を使用して固定左列と適応右列の 2 列レイアウトを実現する 4 つの方法

1. フロート+オーバーフロー:非表示このメソッドは主にオーバーフローを通じて BFC をトリガーし...

HTMLハイパーリンクタグAのTARGET属性の詳細な説明

ハイパーリンク <a> タグはリンク ポイントを表します。これは英語の単語「anchor...

EclipseでTomcatを作成する原理の詳細な説明

ローカルEclipse上にTomcatサーバーを作成する場合、 tomcaインストールディレクトリの...

JavaScript は、シンプルな虫眼鏡の最も完全なコード分析を実装します (ES5)

この記事では、参考までに、シンプルな虫眼鏡を実装するためのJavaScriptの具体的なコードを紹介...

MySQL における in と exists の使い方と違いの紹介

まずコードを書いて (int i=0;i<1000;i++){ (int j=0;j<5...

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

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

Linuxの同時実行は簡単です。このようにするだけです

並行処理関数 i の `grep server /etc/hosts | awk '{pri...