最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL定時(shí)備份方案(利用Linux crontab)

 更新時(shí)間:2020年07月19日 14:52:26   作者:茍且偷生  
這篇文章主要給大家介紹了關(guān)于MySQL定時(shí)備份方案的相關(guān)資料,文中通過(guò)示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

前言

雖說(shuō)現(xiàn)在這世道有些愛(ài)情是有價(jià)的,但是數(shù)據(jù)是無(wú)價(jià)的,數(shù)據(jù)備份是尤為的重要,可以在你未來(lái)的某一天不小心刪庫(kù)了,不用著急跑路。

本片文章介紹的方案是利用Linux自身的crontab定時(shí)任務(wù)功能,定時(shí)執(zhí)行備份數(shù)據(jù)庫(kù)的腳本。

技術(shù)要點(diǎn):

  • 數(shù)據(jù)庫(kù)備份dump命令
  • shell腳本
  • Linux定時(shí)任務(wù)crontab

數(shù)據(jù)備份dump

數(shù)據(jù)庫(kù)都有一個(gè)導(dǎo)出數(shù)據(jù)庫(kù)內(nèi)數(shù)據(jù)和結(jié)構(gòu)的命令,就是備份。

將備份的數(shù)據(jù)還原會(huì)將原來(lái)的數(shù)據(jù)中的表刪了重建,再插入備份中的數(shù)據(jù),這是恢復(fù)。

這一點(diǎn)需要注意,如果恢復(fù)之前的數(shù)據(jù)比備份的多,恢復(fù)后多的數(shù)據(jù)就沒(méi)有了。

列出我常用的兩種數(shù)據(jù)庫(kù)的備份和恢復(fù)命令

postgresql:

備份 pg_dump -h [ip] -U [用戶名] [庫(kù)名] >[導(dǎo)出的.sql 文件]

恢復(fù) psql -s [庫(kù)名] -f [導(dǎo)出.sql 文件]

mysql:

備份 mysqldump -h -u [用戶名] -p [庫(kù)名] > [導(dǎo)出的.sql 文件]

恢復(fù) mysql -u [用戶名] -p [庫(kù)名] < [導(dǎo)出的.sql 文件]

shell腳本

要完成一個(gè)功能完善的備份方案,就需要shell腳本。

我們要讓這個(gè)腳本備份到指定路徑,并壓縮存放,最多30個(gè),超過(guò)30個(gè)刪除最早的,并記錄操作日志。

啥也不說(shuō)了,話都在腳本里,干了!

#用戶名
username=root
#密碼
password=nicai
#將要備份的數(shù)據(jù)庫(kù)
database_name=l_love_you

#保存?zhèn)浞菸募疃鄠€(gè)數(shù)
count=30
#備份保存路徑
backup_path=/app/mysql_backup
#日期
date_time=`date +%Y-%m-%d-%H-%M`

#如果文件夾不存在則創(chuàng)建
if [ ! -d $backup_path ]; 
then  
 mkdir -p $backup_path; 
fi
#開(kāi)始備份
mysqldump -u $username -p$password $database_name > $backup_path/$database_name-$date_time.sql
#開(kāi)始?jí)嚎s
cd $backup_path
tar -zcvf $database_name-$date_time.tar.gz $database_name-$date_time.sql
#刪除源文件
rm -rf $backup_path/$database_name-$date_time.sql
#更新備份日志
echo "create $backup_path/$database_name-$date_time.tar.gz" >> $backup_path/dump.log

#找出需要?jiǎng)h除的備份
delfile=`ls -l -crt $backup_path/*.tar.gz | awk '{print $9 }' | head -1`

#判斷現(xiàn)在的備份數(shù)量是否大于閾值
number=`ls -l -crt $backup_path/*.tar.gz | awk '{print $9 }' | wc -l`

if [ $number -gt $count ]
then
 #刪除最早生成的備份,只保留count數(shù)量的備份
 rm $delfile
 #更新刪除文件日志
 echo "delete $delfile" >> $backup_path/dump.log
fi

給腳本起個(gè)顧名思義的漂亮名字 dump_mysql.sh

給腳本賦予可執(zhí)行權(quán)限 chmod +x dump_mysql.sh , 執(zhí)行后腳本變綠了就是可實(shí)行文件

執(zhí)行方法:./加腳本名稱

chmod命令參數(shù)含義--
+ 代表添加某些權(quán)限
x 代表可執(zhí)行權(quán)限

定時(shí)任務(wù)crontab

crontab是Linux自帶的一個(gè)定時(shí)任務(wù)功能,我們可以利用它每天凌晨執(zhí)行一次 dump_mysql.sh 腳本。

crontab用法:

  • crontab -l 查看定時(shí)任務(wù)列表
  • crontab -e 編輯(新增/刪除)定時(shí)任務(wù)

運(yùn)行crontab -e命令,打開(kāi)一個(gè)可編輯的文本,輸入 00 01 * * * /app/dump_mysql.sh

保本并退出即添加完成。

內(nèi)容解釋:

00 01 * * * /app/dump_mysql.sh 分兩部分看,

第一部分 00 01 * * * 是定時(shí)任務(wù)的周期,第二部分 /app/dump_mysql.sh 到時(shí)間做的事情。

周期表達(dá)式是五個(gè)占位符,分別代表: 分鐘、小時(shí)、日、月、星期

占位符用 * 表示 每 ,用在第一位就是每分鐘,第二位每小時(shí),依此類推

占位符用 具體數(shù)字 表示 具體時(shí)間 ,10用在第一位就是10分,用在第三位表示10號(hào),依此類推

占位符用 - 表示 區(qū)間 ,5-7用在第一位就是5分到7分,用在第五位表示周5到周日,依此類推

占位符用 / 表示 間隔 ,5-10/2用在第一位就是5分到10分間隔2分鐘,用在第二位表示5點(diǎn)到10點(diǎn)間隔2小時(shí),依此類推

占位符用 , 表示 列表 ,5,10用在第一位就是5分和10分,用在第四位表示5月和10月,依此類推

總結(jié)

到此這篇關(guān)于MySQL定時(shí)備份方案的文章就介紹到這了,更多相關(guān)MySQL定時(shí)備份內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺談MyISAM 和 InnoDB 的區(qū)別與優(yōu)化

    淺談MyISAM 和 InnoDB 的區(qū)別與優(yōu)化

    InnoDB和MyISAM是在使用MySQL最常用的兩個(gè)表類型,各有優(yōu)缺點(diǎn),視具體應(yīng)用而定。下面我們就來(lái)具體探討下吧
    2015-07-07
  • 快速解決MySQL服務(wù)無(wú)法啟動(dòng)顯示:系統(tǒng)出錯(cuò),發(fā)生系統(tǒng)錯(cuò)誤1067, 進(jìn)程意外終止的兩種方法

    快速解決MySQL服務(wù)無(wú)法啟動(dòng)顯示:系統(tǒng)出錯(cuò),發(fā)生系統(tǒng)錯(cuò)誤1067, 進(jìn)程意外終止的兩種方法

    本人因?yàn)閜hpstudy的MySQL數(shù)據(jù)庫(kù)與我的電腦上的MySQL數(shù)據(jù)庫(kù)發(fā)生沖突,當(dāng)我將MySQL服務(wù)器的服務(wù)名從MySQL改為MySQL5后,啟動(dòng)MySQL5服務(wù)后就報(bào)錯(cuò):系統(tǒng)出錯(cuò), 發(fā)生系統(tǒng)錯(cuò)誤 1067, 進(jìn)程意外終止,現(xiàn)在將這個(gè)解決方法分享給大家,需要的朋友可以參考下
    2024-06-06
  • MySQL主從同步原理及應(yīng)用

    MySQL主從同步原理及應(yīng)用

    日常工作中,MySQL數(shù)據(jù)庫(kù)是必不可少的存儲(chǔ),其中讀寫(xiě)分離基本是標(biāo)配,而這背后需要MySQL開(kāi)啟主從同步,形成一主一從、或一主多從的架構(gòu)。本篇文章我們就來(lái)解紹MySQL主從同步原理及應(yīng)用,需要的朋友可以參考一下
    2021-10-10
  • Mysql?文件配置解析

    Mysql?文件配置解析

    這篇文章主要介紹了Mysql?文件配置解析,文章通過(guò)mysql的主要配置文件作用展開(kāi)innodb引擎是mysql數(shù)據(jù)庫(kù)中的重要部分的詳細(xì)說(shuō)明,感興趣的小伙伴可以參考一下
    2022-05-05
  • mysql 5.7.11 安裝配置教程

    mysql 5.7.11 安裝配置教程

    這篇文章主要為大家詳細(xì)介紹了mysql 5.7.11 安裝配置教程,感興趣的小伙伴們可以參考一下
    2016-06-06
  • Mysqlslap MySQL壓力測(cè)試工具 簡(jiǎn)單教程

    Mysqlslap MySQL壓力測(cè)試工具 簡(jiǎn)單教程

    Mysqlslap是從5.1.4版開(kāi)始的一個(gè)MySQL官方提供的壓力測(cè)試工具。通過(guò)模擬多個(gè)并發(fā)客戶端訪問(wèn)MySQL來(lái)執(zhí)行壓力測(cè)試,同時(shí)詳細(xì)的提供了“高負(fù)荷攻擊MySQL”的數(shù)據(jù)性能報(bào)告。并且能很好的對(duì)比多個(gè)存儲(chǔ)引擎在相同環(huán)境下的并發(fā)壓力性能差別
    2011-10-10
  • mysql 5.7.16 安裝配置方法圖文教程(ubuntu 16.04)

    mysql 5.7.16 安裝配置方法圖文教程(ubuntu 16.04)

    這篇文章主要為大家分享了ubuntu 16.04下mysql 5.7.16 安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • 美團(tuán)DB數(shù)據(jù)同步到數(shù)據(jù)倉(cāng)庫(kù)的架構(gòu)與實(shí)踐

    美團(tuán)DB數(shù)據(jù)同步到數(shù)據(jù)倉(cāng)庫(kù)的架構(gòu)與實(shí)踐

    今天小編就為大家分享一篇關(guān)于美團(tuán)DB數(shù)據(jù)同步到數(shù)據(jù)倉(cāng)庫(kù)的架構(gòu)與實(shí)踐,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02
  • MySQL數(shù)據(jù)庫(kù)完全卸載的方法

    MySQL數(shù)據(jù)庫(kù)完全卸載的方法

    MySQL數(shù)據(jù)庫(kù)是一款非常好用的數(shù)據(jù)庫(kù)管理系統(tǒng),但是相對(duì)來(lái)說(shuō)卸載起來(lái)麻煩一些,本文就詳細(xì)的介紹有一下卸載方法,感興趣的可以了解一下
    2022-03-03
  • MySQL 在創(chuàng)建和刪除用戶時(shí)出現(xiàn)的ERROR 1396 (HY000)錯(cuò)誤問(wèn)題解決

    MySQL 在創(chuàng)建和刪除用戶時(shí)出現(xiàn)的ERROR 1396 (HY000)錯(cuò)誤問(wèn)題解決

    MySQL作為流行的數(shù)據(jù)庫(kù)系統(tǒng),涉及用戶管理時(shí)可能遇到ERROR1396錯(cuò)誤,該錯(cuò)誤發(fā)生在嘗試創(chuàng)建已存在的用戶或刪除不存在的用戶時(shí),解決方法包括檢查用戶存在性或選擇不同用戶名,此外,MySQL提供了創(chuàng)建和授權(quán)用戶的便捷工具,注意使用FLUSH PRIVILEGES命令使授權(quán)生效
    2024-09-09

最新評(píng)論

米易县| 绵阳市| 鸡西市| 白银市| 芒康县| 江西省| 靖江市| 颍上县| 阳谷县| 聊城市| 诸暨市| 什邡市| 从化市| 信丰县| 咸阳市| 鸡泽县| 陇南市| 淮滨县| 淄博市| 南皮县| 蒲江县| 扎鲁特旗| 彰化县| 旬邑县| 萝北县| 偃师市| 离岛区| 龙海市| 昭苏县| 崇文区| 界首市| 光山县| 桂东县| 皋兰县| 宁海县| 合山市| 亚东县| 澜沧| 东宁县| 乌拉特前旗| 娱乐|