MySQL 定時備份操作

來源:互聯網
上載者:User

1、建立儲存備份檔案的路徑/mysqldata

  #mkdir /bak/mysqlbak

2、建立/usr/sbin/bakmysql檔案

  #vi /usr/sbin/bakmysql.sh

3、寫入指令碼如下指令碼 

注意,如果是你的mysql密碼是帶有特殊字元的,比如!@# ,那麼需要在 -p參數後面加上‘’,把密碼放在‘’中,'123!@#'

#!/bin/bash
#Name:bakmysql.sh
#This is a ShellScript For Auto DB Backup and Delete old Backup
backupdir=/bak/mysqlbak
time=` date +%Y%m%d%H `
mysqldump --opt -h192.168.1.1 -uroot -p123456 dbname | gzip > $backupdir/mo$time.sql.gz
#
find $backupdir -name "mo*.sql.gz" -type f -mtime +5 -exec rm {} \; > /dev/null 2>&1

指令碼解析:

backupdir Database Backup路徑

time時間點

mysqldump :mysql備份工具,--opt -h 遠程執行備份操作,

dbname:資料庫名稱,

gzip:壓縮成gzip格式的。

最後一個行是保證5最新個備份檔案

4、定時任務

修改/etc/crontab

#vi /etc/crontab

在下面添加

01 3 * * * root /usr/sbin/bakmysql

 表示每天3點鐘執行備份

5、重新啟動crond

  # /etc/rc.d/init.d/crond restart (RedHat)

#/etc/init.d/cron  restart (Ubuntu)

完成。

手工恢複:

先解壓gz檔案

gunzip  xxx.gz

mysql -u root -p --default-character-set=utf8

use dbname

source /root/xx.sql

搞定

so esay ,那裡不會點那裡。

  • 1
  • 2
  • 下一頁

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.