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 で結果を選択して更新を実行する例のチュートリアル

1. 単一テーブルクエリ -> 更新 テーブル名の更新 フィールド1=新しい値1、フィールド2...

この記事は、JQueryの基本的な操作を理解し、始めるのに役立ちます。

目次1. Jquery を使用する手順: (1)jsライブラリをインポートする(2)ページ読み込みイ...

MySQL 実践演習 シンプルなライブラリ管理システム

目次1. ソート機能2. データベースを準備する3. データベースに関連するエンティティクラスの構築...

MySql の忘れたパスワードの変更方法はバージョン 5.7 以上に適しています

1. まずmysqld.exeプロセスを停止します2. cmd を開き、mysql の bin ディ...

Mac ノードの削除と再インストールのケーススタディ

Macノードの削除と再インストール消去 ノード -v sudo npm アンインストール npm -...

Logrotate は 2 時間ごとに Catalina.out ログローテーションを実装します

1. Logrotateツールの紹介Logrotate はログファイル管理ツールです。Linux に...

フレックスレイアウトは左のテキストオーバーフローを実現し、右のテキストの適応を省略します

テキストの長さに応じて、左側のテキストの幅を自動調整できる状況を実現したい。1行が表示できない場合、...

ウェブフロントエンド開発の細部

1 選択タグは閉じられている必要があります <select></select>...

vue-router を遅延ロードする 3 つの方法のまとめ

遅延読み込みを使用しない 'vue' から Vue をインポートします。 '...

jQuery+swiper コンポーネントはタイムラインのスライド年タブ切り替え効果を実現します

結果: 実装コード: スワイパーコンポーネントと一緒に使用する必要がありますSwiper 基本デモア...

Linux 7.6 バイナリに MySQL 8.0.27 をインストールする詳細な手順

目次1. 環境整備1.1 オペレーティング システムのバージョン1.2 ディスク容量1.3 ファイア...

LinuxでDHCPサーバーを構築する方法

目次1. 基礎知識: 2. DHCPサーバーの設定: 1. サーバーのIPを確認する2. DHCP ...

MySQL のあまり知られていないソート方法

序文ORDER BY 字段名升序/降序、このソートステートメントは皆さんご存知だと思いますが、特殊な...

ダッシュボードを実装するためのjQueryプラグイン

jQueryプラグインは、参考のためにダッシュボードを実装します。具体的な内容は次のとおりです。一般...

MySQL カーソル関数と使用法

目次意味カーソルの役割カーソルの使用カーソルの宣言カーソルを開くカーソルデータのトラバースカーソルを...