小企業sql server資料備份shell指令碼解決方案

來源:互聯網
上載者:User

標籤:shell   指令碼備份   

公司有三台sql server資料庫,每天通過sql server計劃任務備份資料到本地,再通過本地上傳到資料服務器上做儲存,如此反覆,有時因為工作忙,忘了上傳,導致資料被替換而沒有備份的現象。

經過對Linux學習,發現這一切都只是小問題,不需要這麼麻煩,如是說幹就幹。


  1. 通過查資料,sql server是可以通過遠程方式備份的,如果配置好sql server的遠程備份功能,將資料每天備份到指定的資料存放區伺服器上

  2. 將資料備份伺服器從windows 7改裝成centos 6.5

  3. 現在問題是sql server每天傳過來的資料庫檔案是相同檔案名稱的,是會將原有備份替換的,這樣就儲存不了多天的資料了,如是我想利用指令碼的方式實現當Database Backup檔案傳過來後,我就在目前的目錄建立一個日期檔案夾,然後將資料庫檔案自動移動到該檔案夾中,這樣下次備份的時候,就不會替換了,如果迴圈

  4. 為了防止磁碟空間不足,我在指令碼中加入find,尋找到大於30天的資料就清除,(find ./ -type f -mtime +30 -name "*.bak" | xargs rm -f)只保留30天,因為公司對這資料庫不是很嚴格要求保留多少天,所以我就看磁碟的空間來定

  5. 然後通過df -h查看備份磁碟的空間大小,做一個每天的郵件通過,告訴管理員,當天刪除的是哪天的備份,磁碟空間還餘多少。


以下是指令碼實現:

#!/bin/bash

WEEK=`date +%w`

# Disk size chkeck

echo `df -h | awk ‘{print $4}‘| sed -n ‘5p‘| sed -r ‘s#(.*)#Waring /Hddf Avail \1 please chkeck Disk#‘`>/Shell/backup.log


find /Hddf/database/  -maxdepth 1 -mtime +24 -type d ! -name "zabbix" ! -name "db" ! -name "RTX*" -exec rm -rf {} \; &&\

echo `df -h | awk ‘{print $4}‘| sed -n ‘5p‘| sed -r ‘s#(.*)#Waring /Hddf Avail \1 please chkeck Disk#‘`>>/Shell/backup.log


if [ $? -eq 0 ];then

echo "`date +%y%m%d` 刪除成功  `find /Hddf/database/  -maxdepth 1 -mtime +24 -type d ! -name "zabbix" ! -name "db" ! -name "RTX*"`">>/Shell/b

ackup.log

else

echo "`date +%y%m%d` 刪除不成功 ">>/Shell/backup.log

fi


# from email admin

mail -s "databackup" [email protected] </Shell/backup.log


if [ $WEEK -ne 0 ];then

if [ ! -d /Hddf/database/`date +%y%m%d` ];then

        mkdir -p /Hddf/database/`date +%y%m%d`

        mv  /Hddf/database/{*.bak,*.BAK}  /Hddf/database/`date +%y%m%d`/

fi

else

        echo "今天是星期日 沒有資料備份">> /Shell/mvdata.txt

fi


本文出自 “鐘良的linux技術交流部落格” 部落格,請務必保留此出處http://zhongliang.blog.51cto.com/4507905/1917249

小企業sql server資料備份shell指令碼解決方案

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.