Linux 用shell腳本自動化備份數據庫

2018-07-31 14:41 更新

防偽碼:防止誤刪系統(tǒng)數據庫,定時備份你我更安心!              

      使用shell腳本自動化備份數據庫

一、簡介

系統(tǒng)數據庫如圖所示(以MySQL5.5為例)

1、information_schema:信息數據庫,其中保存著關于MySQL服務器所維護的所有其他數據庫的信息。在information_schema中,有數個只讀表。它們實際上是視圖,而不是基本表,因此,你將無法看到與之相關的任何文件。

2、mysql:MySQL的的核心數據庫,類似于SQLServer中的master表,主要負責存儲數據庫的用戶、權限設置、關鍵字、mysql自己需要使用的控制和管理信息等。不可以刪除,如果對mysql不是很了解,也不要輕易修改這個數據庫里面的表信息。

3、performance_schema:存儲引擎,主要用于收集數據庫服務器性能參數。

4、test:安裝時候創(chuàng)建的一個測試數據庫,和它的名字一樣,是一個完全的空數據庫,沒有任何表,可以刪除。

二、編寫腳本,自動化備份數據庫(以test為例)

1、開啟服務

2、用戶授權

3、編寫腳本(vim yy.sh)

腳本如下:

#!/bin/bash

#auto backup

back=/data/backup/`date +%Y%m%d`

mysqldb=test

mysqlpw=123456

mysqluser=backup

mysqlcmd=$(which mysqldump)


if [ $UID -ne 0 ];then

         echo "bixushiyongroot"

         exit

fi

if [ ! -d $back ];then

   mkdir -p   $back

else

   echo  "this  $back  is exit............."

fi


$mysqlcmd  -u$mysqluser  -p$mysqlpw  -d $mysqldb >$back/$mysqldb.sql


if [ $?  -eq 0 ];then

               echo  "The backup successful"

else

               echo    "Backup failure"

fi



4、設置執(zhí)行權限并執(zhí)行腳本

三、根據工作需要,設置計劃任務(crontab -e)


本文出自 “一盞燭光” 博客,謝絕轉載!

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號