mysql定時備份

2021-08-31 02:33:45 字數 2402 閱讀 3314

2009-01

-191.cron介紹 

分< >時< >日< >月< >星期< >要執行的命令 

crontab命令的一般形式為: 

crontab[-u user] -e -l -r 

其中: 

-u 使用者名稱。 

-e 編輯crontab檔案。 

-l 列出crontab檔案中的內容。 

-r 刪除crontab檔案。 

2.mysqldump介紹 

--add-drop-table 

這個選項將會在每乙個表的前面加上drop table if exists語句,這樣可以保證導回mysql資料庫的時候不會出錯,因為每次導回的時候,都會首先檢查表是否存在,存在就刪除。 

--add-locks 

這個選項會在insert語句中捆上乙個lock table和unlock table語句。這就防止在這些記錄被再次匯入資料庫時其他使用者對錶進行的操作 

-c 這個選項使得mysqldump命令給每乙個產生insert語句加上列(field)的名字。當把資料匯出導另外乙個資料庫時這個選項很有用。 

--delayed-insert 

在insert命令中加入delay選項 

-f 使用這個選項,在執行匯出之前將會重新整理mysql伺服器的log. 

-f 使用這個選項,即使有錯誤發生,仍然繼續匯出 

-l 使用這個選項,匯出表的時候伺服器將會給表加鎖。 

-t 這個選項使的mysqldump命令不建立create table語句,這個選項在您只需要資料而不需要ddl(資料庫定義語句)時很方便。 

-d 這個選項使的mysqldump命令不建立insert語句。 

--opt 

此選項將開啟所有會提高檔案匯出速度和創造乙個可以更快匯入的檔案的選項。 

-q 這個選項使得mysql不會把整個匯出的內容讀入記憶體再執行匯出,而是在讀到的時候就寫入導檔案中。 

-t path 

這個選項將會建立兩個檔案,乙個檔案包含ddl語句或者表建立語句,另乙個檔案包含資料。ddl檔案被命名為table_name.sql,資料檔案被命 名為table_name.txt.路徑名是存放這兩個檔案的目錄。目錄必須已經存在,並且命令的使用者有對檔案的特權。 

-w "where clause" or -where = "where clause " 

使用這一選項來過篩選將要放到 匯出檔案的資料 

3.進行備份 

建立備份檔案夾 /mysqlbak 

在 /usr/sbin 檔案下建立bakmysql指令碼 

#!/bin/sh 

name=$(date +%y-%m-%d) 

mysqldump database  -ubackup -p123456 |gzip>/mysqldata/mysql$name.gz 

在ubuntu下下可以選擇兩種任務方案 

第一: 

檢視 /etc/crontab 檔案 

# m h dom mon dow user  command 

17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly 

25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 

47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ) 

52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )  # 

第乙個是指每天0點17分執行/etc/cron.hourly下的所有任務,後面的都類似。 

m   分鐘 

h   小時 

dom   即day of month吧,就是日期 

mon   即month,月份 

dow   即day of week 星期 

run-parts 是執行後面指定的目錄下的任務,不指定這個引數則為執行單個指定的檔案。 

根據這些我們就可以很輕鬆的進行任務,直接把我們的指令碼根據自己的需求放入到其中的資料夾中即可。 

第二: 

1.crontab -e 編輯增加任務。 

0 0  *    *   *    /usr/sbin/bakmysql 

表示在每天的0點0分執行/usr/sbin/bakmysql指令碼。 

2.crontab -l 檢視我們的任務。 

3./etc/init.d/cron restart 重啟crond。 

mysql定時備份指令碼 MySql定時備份指令碼

最近需要對某服務的資料庫資料進行備份,因此參考網上教程完成資料庫備份指令碼.因為服務的使用頻率較低,因此設定定時任務,在每天的中午以及午夜時分進行備份操作.bin bash 設定mysql的登入使用者名稱和密碼 根據實際情況填寫 mysql user mysql password mysql hos...

MySql 定時備份

mysql bat echo off set month date 3,2 set day date 0,2 set year date 6,4 d redmine bitnam 1 mysql bin mysqldump opt ubackup pbackup h 192.168.122.111 ...

mysql定時備份

2009 01 191.cron介紹 分 時 日 月 星期 要執行的命令 crontab命令的一般形式為 crontab u user e l r 其中 u 使用者名稱。e 編輯crontab檔案。l 列出crontab檔案中的內容。r 刪除crontab檔案。2.mysqldump介紹 add d...