MySQL データベースのスケジュールされたバックアップ スクリプトの共有

MySQL データベースのスケジュールされたバックアップ スクリプトの共有

BackUpMysql.sh スクリプト

#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
エクスポートPATH

#データベース IP
DBHOST=''
#データベースユーザー名 DBUSER=''
#データベースパスワード DBPASSWD=''
#バックアップが必要なデータベース。複数のデータベースはスペースで区切られます DBNAME=''

#バックアップ時間 backtime=`date +%Y-%m-%d_%H%M%S`
#バックアップパス(現在のディレクトリ)
BACKPATH=$(dirname $(readlink -f $0))
$BACKPATHをエコーする
#ログバックアップパス LOGPATH="${BACKPATH}/log"
#データバックアップパス DBPATH="${BACKPATH}/db"

#バックアップディレクトリを作成する [ ! -d "${LOGPATH}" ] && mkdir -p "${LOGPATH}"
[ ! -d "${DBPATH}" ] && mkdir -p "${DBPATH}"

#ログ レコード ヘッダー エコー "バックアップ時間は ${backtime}、バックアップ データベース テーブル ${DBNAME} が開始されます" >> ${LOGPATH}/mysqlback.log

#$DBNAMEのテーブルの正式なバックアップデータベース。
ソース=`mysqldump -u ${DBUSER} -h${DBHOST} -p${DBPASSWD} ${table}> ${LOGPATH}/${backtime}.sql` 2>> ${LOGPATH}/mysqlback.log;

#バックアップは次の操作に成功します $? 前のコマンドの結果を取得します。0は成功を表します if [ "$?" == 0 ]; then
cd ${LOGPATH}
#ハードディスク容量を節約するには、データベースを圧縮します tar -czf ${DBPATH}/${table}${backtime}.tar.gz ./${backtime}.sql > /dev/null
#元のファイルを削除し、圧縮ファイルのみを残します rm -f ${LOGPATH}/${backtime}.sql
#7 日前のバックアップを削除します。つまり、7 日間のバックアップのみを保存します。 find $DBPATH -name "*.tar.gz" -type f -mtime +7 -exec rm -rf {} \; > /dev/null 2>&1
echo "データベース テーブル ${DBNAME} が正常にバックアップされました!!" >> ${LOGPATH}/mysqlback.log
それ以外
#バックアップが失敗した場合は、次の操作を実行します echo "データベース テーブル ${DBNAME} のバックアップに失敗しました!!" >> ${LOGPATH}/mysqlback.log
フィ
終わり

crontabを使用してBackUpMysql.shスクリプトを定期的に実行し、毎晩12:00に実行されるように設定します。

crontab -eを実行する

入力

59 23 * * * /data/mysqlbak/BackUpMysql.sh

著者: Low-key Little Panda リンク: http://ilovey.live/archives/Mysqlbackupshell

上記はMysqlデータベースのスケジュールバックアップスクリプトの詳細な内容です。Mysqlスケジュールバックアップスクリプトの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • MySQL データベースのデータを定期的にバックアップし、指定した期間保持するシェル スクリプト
  • MySQL スケジュールされたデータベース バックアップ操作の例
  • Linux は MySQL データベースのスケジュールされたバックアップを実装し、30 日以上前のバックアップ ファイルを削除します。
  • MySQLデータベースのスケジュールバックアップを実装する方法
  • Linux で MySQL データベースのスケジュールされたバックアップを実装する簡単な方法
  • MySQL データベースを自動的にバックアップする最良の方法 (Windows サーバー)
  • MySQL データベースのバックアップをスケジュールするいくつかの方法 (包括的)

<<:  Vueはツリーテーブルを実装する

>>:  Linux で静的ルーティングを追加するための 2 つの実装方法の分析

推薦する

TypeScript 環境を構築して VSCode にデプロイする詳細な手順

目次TypeScript環境の構築ステップ1: Taobaoミラーをダウンロードするステップ2: T...

MySQL で JSON 形式のフィールドをクエリする詳細な説明

作業開発プロセス中に、顧客の名前、携帯電話番号、ID カード、およびドキュメントの種類を動的に保存す...

JavaScript の find() メソッドと filter() メソッドの違いのまとめ

目次序文JavaScript find() メソッドJavaScript filter() メソッド...

React、Angular、Vueの3つの主要なフロントエンド技術の詳細説明

目次1. 反応する基本的な使い方注目すべき機能クラスコンポーネント仮想DOMライフサイクルメソッドJ...

VueのkeepAliveコンポーネントの機能と使い方の詳細な説明

序文面接中、多くの面接官は「keep-alive が何をするのか知っていますか?」と質問する際に V...

Centos7 環境でバイナリ インストール パッケージから mysql5.6 をインストールする方法の詳細な説明

この記事では、centos7 環境でバイナリ インストール パッケージを使用して mysql5.6 ...

jQuery ツリービュー ツリー構造アプリケーション

この記事では、jQueryツリービューツリー構造のアプリケーションコードを例として紹介します。具体的...

CSS3を使用してヘッダーアニメーション効果を作成する

Netease Kanyouxi公式サイト(http://kanyouxi.163.com/)(棚...

Windows 10 Home EditionにDockerをインストールする方法を教えます

Redisの本やSpring Cloud Alibabaの本を執筆した際に、一部の分散コンポーネント...

docker システムコマンドセットの使用

目次docker システム df docker システム プルーンdocker systemc 情報...

vue.js 動的コンポーネントの詳細な説明

:動的コンポーネントv-bind:is="component name" を使用...

XHTML CSSを使用して正式なブログを書く

ブログの正式名称は「Web log」で、中国語で「ネットワークログ」を意味します。後にブログに短縮さ...

CSS 3D からソースコードによる空間座標軸へ

かつて、サイコロを振るゲームについて話しました。その時は、steps 属性 + スプライト画像を使用...

DockerとFastDFSのインストールコマンドと使い方の詳しい説明

Dockerの機能1) すぐに始められるユーザーがプログラムを「Docker 化」するには、わずか数...