日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
簡單易懂的MySQL數(shù)據(jù)庫定時備份方法(mysql數(shù)據(jù)庫如何定時備份數(shù)據(jù)庫備份)

MySQL數(shù)據(jù)庫是現(xiàn)今最常用的關(guān)系型數(shù)據(jù)庫之一,它被廣泛應(yīng)用于各種各樣的應(yīng)用程序中,如網(wǎng)絡(luò)應(yīng)用、企業(yè)級軟件、電子商務(wù)網(wǎng)站等等。但是,由于各種原因,比如軟件故障、服務(wù)器故障或者人為失誤,數(shù)據(jù)庫中存儲的數(shù)據(jù)有可能會丟失或者損壞。因此,數(shù)據(jù)庫備份是非常重要的任務(wù)。在這篇文章中,我們將介紹如何使用Linux系統(tǒng)中的Crontab功能實現(xiàn)MySQL數(shù)據(jù)庫的定時備份。

目前成都創(chuàng)新互聯(lián)公司已為近1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機、網(wǎng)站托管運營、企業(yè)網(wǎng)站設(shè)計、嘉禾網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

Crontab是一個用于在Linux操作系統(tǒng)中定時執(zhí)行任務(wù)的工具。它允許用戶設(shè)置定時任務(wù),例如備份MySQL數(shù)據(jù)庫,清理系統(tǒng)日志等等。因此,我們可以使用Crontab功能,在MySQL數(shù)據(jù)庫中定時備份數(shù)據(jù)。

之一步:創(chuàng)建MySQL備份腳本

創(chuàng)建MySQL備份腳本是我們備份MySQL數(shù)據(jù)庫的之一步。在這個腳本中,我們將使用mysqldump命令來備份我們的數(shù)據(jù)庫。mysqldump命令可以將MySQL數(shù)據(jù)庫中的所有表導(dǎo)出為單獨的SQL文件,這些文件包含數(shù)據(jù)庫的完整結(jié)構(gòu)和數(shù)據(jù)。對于大型數(shù)據(jù)庫,備份操作可能需要一些時間。因此,我們可以在備份腳本中加入一些選項來壓縮備份文件,以節(jié)省存儲空間,并減少備份運行時間。

以下是一個示例MySQL備份腳本:

“`

#!/bin/bash

# MySQL備份腳本

# 設(shè)置備份目錄和MySQL登錄憑據(jù)

BACKUP_DIR=”/var/backups/mysql”

MYSQL_USER=”root”

MYSQL_PASSWORD=”password”

# 創(chuàng)建備份目錄(假設(shè)它不存在)

mkdir -p ${BACKUP_DIR}

# 備份日期

BACKUP_DATE=$(date +%Y-%m-%d)

# MySQL備份文件名

BACKUP_FILE=”backup-${BACKUP_DATE}.sql”

# 壓縮MySQL備份文件

COMPRESSED_BACKUP_FILE=${BACKUP_FILE}.gz

# 完整備份MySQL數(shù)據(jù)庫

mysqldump -u ${MYSQL_USER} -p${MYSQL_PASSWORD} –all-databases > ${BACKUP_DIR}/${BACKUP_FILE}

# 壓縮備份文件

gzip ${BACKUP_DIR}/${BACKUP_FILE}

# 刪除超過7天的備份文件

find ${BACKUP_DIR} -type f -mtime +7 -name “*.gz” -exec rm {} \;

# 輸出備份文件名

echo “MySQL備份已完成:${BACKUP_DIR}/${COMPRESSED_BACKUP_FILE}”

“`

上面的腳本分為三部分:

一、設(shè)置備份目錄和MySQL登錄憑據(jù)

我們需要設(shè)置一個備份目錄來存儲備份文件,并指定MySQL登錄憑據(jù)。你需要替換MYSQL_USER和MYSQL_PASSWORD的值以反映你的正確憑據(jù)。

二、備份MySQL數(shù)據(jù)庫

在這一部分,我們使用mysqldump命令備份MySQL數(shù)據(jù)庫。該命令將導(dǎo)出所有數(shù)據(jù)庫的表,并將其存儲在一個名為backup-.sql的單獨文件中。

三、刪除舊的備份文件

在這一部分,我們使用find命令查找超過7天的備份文件,并將它們刪除。

第二步:添加Crontab任務(wù)

在MySQL備份腳本創(chuàng)建完成之后,我們需要將任務(wù)添加到Crond中。Crond是一個定時任務(wù)管理器,它允許用戶在后臺運行腳本,定時執(zhí)行一些任務(wù)。我們可以通過編輯crontab文件來添加定時任務(wù)。使用以下命令打開crontab文件:

“`

$ crontab -e

“`

這個命令將打開一個文本編輯器,允許我們編輯Crontab任務(wù)。

然后,我們可以在crontab文件中添加以下行:

“`

# 每晚10點備份MySQL數(shù)據(jù)庫

0 22 * * * /bin/bash /path/to/mysql/backup.sh >/dev/null 2>&1

“`

以上示例中的Crontab功能表示每天晚上十點運行MySQL備份腳本(backup.sh)并且將標(biāo)準輸出和標(biāo)準錯誤輸出重定向至/dev/null。

在這個例子中,如果你將MySQL備份腳本放在/home/user/backup.sh,則Crontab行看起來像這樣:

“`

0 22 * * * /bin/bash /home/user/backup.sh >/dev/null 2>&1

“`

我們只需要保存并關(guān)閉crontab文件即可。

結(jié)束語:

成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù)!

Mysql數(shù)據(jù)庫備份的幾種方法

數(shù)據(jù)備份是數(shù)據(jù)容災(zāi)的最后一道防線,即便有著兩地三中心的架構(gòu),備份也依然重要。如果備份出問題,備份時影響了交易業(yè)務(wù),備份數(shù)據(jù)無法恢復(fù),這些也是企業(yè)難以承受的。所以選擇合適的備份工具尤為重要。

每個企業(yè)級數(shù)據(jù)庫都會有配套的備份工具,MEB(MySQL Enterprise Backup)就是MySQL企業(yè)版中非常重要的工具之一,是為企業(yè)級客戶提供的數(shù)據(jù)備份方案。

Xtrabackup一直作為MEB 開源版?zhèn)涮ザ嬖冢瑥腗ySQL 8.0開始情況可能會變得有所不同。

在 MySQL 8.0的Backup Lock、Redo Log Archiving、Page Tracking等新特性的加持下,MEB備份/恢復(fù)體驗會更好,目前xtrabackup還不支持這些特性。

MySQL 企業(yè)版還有哪些功能?

特性1:Backup Lock

8.0之前使用xtrabackup或MEB做物理備份,為了保證備份時InnoDB引擎表與其他引擎數(shù)據(jù)文件、及binlog日志的一致性會上全局讀鎖,再拷貝非InnoDB文件,這期間MySQL會變成只讀,數(shù)據(jù)無法寫入。表數(shù)量越多,可能加上時間越長,如果使用的xtrabackup 不小心沒加rsync參數(shù),逐個拷貝frm文件,鎖定時間會更長,對業(yè)務(wù)影響較大。

我曾遇到過部署在虛擬機的實例有12023多張表,當(dāng)時使用的xtrabackup,備份腳本中沒加rsync參數(shù),結(jié)果鎖了十幾分鐘,而MEB就沒有這樣的問題。

MySQL 8.0支持輕量級備份鎖 LOCK INSTANCE FOR BACKUP,數(shù)據(jù)字典也重構(gòu)了由InnoDB存儲。若不創(chuàng)建非InnoDB表,MEB默認使用備份鎖獲取binlog日志一致性位置,并阻止DDL操作,但不影響DML操作。

只有InnoDB表,僅上備份鎖

請點擊輸入圖片描述

若有非InnoDB表,上全局鎖

請點擊輸入圖片描述

特性2:Redo Log Archiving

MEB能做到在線熱備,備份時不影響數(shù)據(jù)庫讀寫,這是利用了InnoDB事務(wù)日志,在備份期間持續(xù)監(jiān)視redo log的變化,讀取增量變化,寫入到ibbackup_logfile,也就不需要上鎖來保障備份一致性。(對非InnoDB的文件需要上讀鎖拷貝)

如果備份期間數(shù)據(jù)庫寫入負載特別大,而寫入ibbackup_logfile速度較慢,redo log size也不大,很可能會出現(xiàn)ibbackup_logfile的寫入速度跟不上redo log記錄生成速度,redo log 空間不夠時需要覆寫日志文件,那么來不及寫入ibbackup_logfile的記錄會丟失,導(dǎo)致備份失敗。

MEB 4.1對此做了優(yōu)化,將redo log處理線程拆分成多線程分工合作,提高處理redo log的效率,降低了redo log覆寫造成備份失敗的概率,但redo log新增速度和ibbackup_logfile寫入速度懸殊太大,問題依然會發(fā)生。

MySQL 8.0.17支持了redo log archiving 徹殲顫底解決了此問題,備份前設(shè)置innodb_redo_log_archive_dirs,指定redo log歸檔目錄。MEB備份時自動開啟日志歸檔攔改搭,當(dāng)checkpoint時會將舊記錄歸檔到此目錄,后續(xù)從歸檔文件中讀取redo日志記錄,避免了覆寫可能導(dǎo)致的redo記錄丟失。

請點擊輸入圖片描述

注意:innodb_redo_log_archive_dirs 不能在數(shù)據(jù)目錄下,目錄權(quán)限要求是700

特性3:Page Tracking

Page Tracking 是為優(yōu)化增量備份效率,減少不必要的數(shù)據(jù)頁掃描。

增量備份當(dāng)前有3種掃描模式:

page-track:利用LSN精確跟蹤上次備份之后被修改頁面,僅復(fù)制這些頁面,效率最快。

optimistic:掃描上次備份之后被修改的InnoDB 數(shù)據(jù)文件中,找出并拷貝修改的頁面。依賴系統(tǒng)時間,使用存在限制。

full-scan:掃描所有InnoDB數(shù)據(jù)文件,找出并拷貝自上次簡拿備份之后修改的頁面,效率最慢

1、利用page-track增量備份,需先安裝備份組件

mysql> INSTALL COMPONENT “

2、在全備前開啟page-track

SELECT mysqlbackup_page_track_set(true);

3、全備之后,做增量備份時指定若滿足page tracking條件,默認會使用page-track模式,否則會使用full-scan模式,也可以指定–incremental=page-track。

mysqlbackup –incremental-backup-dir=backup_incr –trace=3 –incremental=page-track –incremental-base=history:last_full_backup backup

incremental-base有3種選擇

last_backup:基于前一次備份做增備,前一次備份可能是增備,也可能是全備。這種方式全備之間可能會有多個增備,每次增量可能比較小,但恢復(fù)時需要逐個合并。

last_full_backup:基于前一次全備做增備。這種方式增備會越往后體積可能越大,但恢復(fù)時只需要合并最后一次增量備份。

dir:基于前一次的備份目錄,前一次備份可能是增備,也可能是全備。

測試對比full-scan 和page-track ,在變更頁小于總體50%的情況下 ,備份效率至少能有1倍的速度提升。

page-track 模式 磁盤讀寫均衡,說明讀寫的都是修改頁面。

請點擊輸入圖片描述

full-scan模式 磁盤讀寫差別很大,說明讀了很多未修改的頁面。

請點擊輸入圖片描述

1、復(fù)制date文件夾備份

============================

假想環(huán)境:

MySQL 安裝位置:C:\MySQL

論壇數(shù)據(jù)庫名稱為:bbs

數(shù)據(jù)庫備份目的地:C:\db_bak\

============================

新建db_bak.bat,寫入以下代碼

*******************************Code Start*****************************

net stop mysql

xcopy c:\mysql\data\bbs\*.* c:\db_bak\bbs\%date:~0,10%\ /S /I

net start mysql

*******************************Code End *****************************

然后使用Windows的“計劃任務(wù)”定時執(zhí)行該批處理腳本即可。(例如:每天凌晨3點執(zhí)行back_db.bat)

釋:備份和恢復(fù)的操作都比較簡單,完整性比較高,控制備份周期比較靈活,例如,用%date:~0,10%。此方法適合有獨立主機但對mysql沒有管理

經(jīng)驗的用戶。缺點是占用空間比較多,備份期間mysql會短時間斷開(例如:針對30M左右的數(shù)據(jù)庫耗時5s左右),針對%date:~0,10%的用法

參考。李掘

2、mysqldump備份成sql文件

==============

假想環(huán)境:

MySQL 安裝位置:C:\MySQL

論壇數(shù)據(jù)庫名稱為:bbs

MySQL root 密碼:123456

數(shù)據(jù)庫備份目的地:D:\db_backup\

腳本:

rem *******************************Code Start*****************************

@echo off

set “Ymd=%date:~,4%%date:~5,2%%date:~8,2%”

C:\MySQL\bin\mysqldump –opt -u root –password=bbs > D:\db_backup\bbs_%Ymd%.sql

@echo on

rem *******************************Code End*****************************

將以上代碼保存為backup_db.bat

然后使用Windows的“計劃任務(wù)”定時執(zhí)行該腳本即可。(例如:每天歷衡凌晨5點執(zhí)行back_db.bat)

說明:此方法可以不用關(guān)閉數(shù)據(jù)庫,并且可以按每一天的時間來名稱備份文肢擾做件。

通過%date:~5,2%來組合得出當(dāng)前日期,組合的效果為yyyymmdd,date命令得到的日期格式默認為yyyy-mm-dd(如果不是此格式可以通過pause命令來暫停命令行窗口看通過%date:~,20%得到的當(dāng)前計算機日期格式),所以通過%date:~5,2%即可得到日期中的第五個字符開始的兩個字符,例如今天為,通過%date:~5,2%則可以得到02。(日期的字符串的下標(biāo)是從0開始的)

3、利用WinRAR對MySQL數(shù)據(jù)庫進行定時備份。

對于MySQL的備份,更好的方法就是直接備份MySQL數(shù)據(jù)庫的Data目錄。下面提供了一個利用WinRAR來對Data目錄進行定時備份的方法。

首先當(dāng)然要把WinRAR安裝到計算機上。

將下面的命令寫入到一個文本文件里

*******************************Code Start*****************************

net stop mysql

c:\progra~1\winrar\winrar a -ag -k -r -s d:\mysql.rar d:\mysql\data

net start mysql

*******************************Code End*****************************

保存,然后將文本文件的擴展名修改成CMD。進入控制面版,打開計劃任務(wù),雙擊“添加計劃任務(wù)”。在計劃任務(wù)向?qū)е姓业絼偛诺腃MD文件,接著為這個任務(wù)指定一個運行時間和運行時使用的賬號密碼就可以了。

這種方法缺點是占用時間比較多,備份期間壓縮需要時間,mysql斷開比之一種方法更多的時間,但是對于文件命名很好。

如何定時備份遠程mysql數(shù)據(jù)庫

在百度里面搜索“多備份”,注冊一個賬號

登陸成功后,找到數(shù)據(jù)庫備猜早份

進行數(shù)據(jù)庫遠程授權(quán):要備份成功,得先對數(shù)據(jù)庫進行遠程授權(quán),允許備份主機遠程訪問你的數(shù)據(jù)庫。

填寫你的數(shù)據(jù)庫IP,數(shù)據(jù)庫用戶名,密碼等參數(shù)信息

選擇存儲位置,備份頻率等

至此,數(shù)據(jù)庫仔嘩備份任務(wù)就創(chuàng)建成功了。然后,多備份就會自動定時的幫你念兆行備份你的數(shù)據(jù)庫。

mysql數(shù)據(jù)庫如何定時備份數(shù)據(jù)庫備份的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于mysql數(shù)據(jù)庫如何定時備份數(shù)據(jù)庫備份,簡單易懂的MySQL數(shù)據(jù)庫定時備份方法,Mysql數(shù)據(jù)庫備份的幾種方法,如何定時備份遠程mysql數(shù)據(jù)庫的信息別忘了在本站進行查找喔。

香港云服務(wù)器機房,創(chuàng)新互聯(lián)(www.cdcxhl.com)專業(yè)云服務(wù)器廠商,回大陸優(yōu)化帶寬,安全/穩(wěn)定/低延遲.創(chuàng)新互聯(lián)助力企業(yè)出海業(yè)務(wù),提供一站式解決方案。香港服務(wù)器-免備案低延遲-雙向CN2+BGP極速互訪!


本文標(biāo)題:簡單易懂的MySQL數(shù)據(jù)庫定時備份方法(mysql數(shù)據(jù)庫如何定時備份數(shù)據(jù)庫備份)
分享路徑:http://m.5511xx.com/article/cojsjgj.html