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

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

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

前言

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

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

技術(shù)要點:

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

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

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

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

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

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

postgresql:

備份 pg_dump -h [ip] -U [用戶名] [庫名] >[導出的.sql 文件]

恢復 psql -s [庫名] -f [導出.sql 文件]

mysql:

備份 mysqldump -h -u [用戶名] -p [庫名] > [導出的.sql 文件]

恢復 mysql -u [用戶名] -p [庫名] < [導出的.sql 文件]

shell腳本

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

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

啥也不說了,話都在腳本里,干了!

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

#保存?zhèn)浞菸募疃鄠€數(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
#開始備份
mysqldump -u $username -p$password $database_name > $backup_path/$database_name-$date_time.sql
#開始壓縮
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

#找出需要刪除的備份
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

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

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

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

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

定時任務crontab

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

crontab用法:

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

運行crontab -e命令,打開一個可編輯的文本,輸入 00 01 * * * /app/dump_mysql.sh

保本并退出即添加完成。

內(nèi)容解釋:

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

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

周期表達式是五個占位符,分別代表: 分鐘、小時、日、月、星期

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

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

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

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

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

總結(jié)

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

相關(guān)文章

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

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

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

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

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

    MySQL主從同步原理及應用

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

    Mysql?文件配置解析

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

    mysql 5.7.11 安裝配置教程

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

    Mysqlslap MySQL壓力測試工具 簡單教程

    Mysqlslap是從5.1.4版開始的一個MySQL官方提供的壓力測試工具。通過模擬多個并發(fā)客戶端訪問MySQL來執(zhí)行壓力測試,同時詳細的提供了“高負荷攻擊MySQL”的數(shù)據(jù)性能報告。并且能很好的對比多個存儲引擎在相同環(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 安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • 美團DB數(shù)據(jù)同步到數(shù)據(jù)倉庫的架構(gòu)與實踐

    美團DB數(shù)據(jù)同步到數(shù)據(jù)倉庫的架構(gòu)與實踐

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

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

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

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

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

最新評論

南开区| 湖州市| 东乡县| 德钦县| 宜宾县| 丰宁| 临夏市| 罗甸县| 和静县| 威宁| 潞西市| 樟树市| 西昌市| 德令哈市| 沾益县| 三河市| 绩溪县| 永川市| 盐边县| 舒兰市| 义马市| 安陆市| 罗田县| 永兴县| 湘潭市| 拜泉县| 平度市| 蓬溪县| 犍为县| 德州市| 辽源市| 靖宇县| 宁城县| 名山县| 九江县| 罗甸县| 内江市| 南宫市| 米易县| 保康县| 尉犁县|