发新话题
打印

利用crontab系统每天定时备份MySQL数据库

利用crontab系统每天定时备份MySQL数据库


利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的。9 R! Y" I  M" B6 b- s; r3 ~
9 e, X' t  [6 n! x; ]7 R3 u
1、创建保存备份文件的路径/mysqldata  # h4 a7 s0 x& O

* W. p+ G9 v) L#mkdir /mysqldata  
2 t. s7 }5 k2 Y5 |' j- ?
3 U( n6 Z! c6 P! V; t3 v2、创建/usr/sbin/bakmysql文件  
. }3 ^! C  ~& ^- \& O; g  w1 T/ |+ x) [4 G
#vi /usr/sbin/bakmysql  # Y% o3 ~/ ]' X2 L5 g( t

( e% H' K6 N2 H4 m: k( j, @8 N输入  
% h) l' ?2 A* T/ e% w  J4 T5 ]: C0 z' K) n, _$ l
rq=` date  %Y%m%d `  
% p4 [8 e: P2 @% W; N
, F) t3 a0 H' H: btar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql  
$ Z& C, }2 p0 k3 U, p% [
* _4 O" n# o& \+ O" i5 i或者写成  
# p# @* l1 b1 H' D/ D3 f- O$ s9 w  W- b# x5 [
rq=` date  %Y%m%d `  ; L$ K8 G5 V$ j$ v0 \/ J8 E  z

, j& J+ d8 b. O7 a1 Z6 M4 g3 Emysqldump --all-databases -u root -p980405 > /mysqldata/mysql$rq.tar.gz  
2 x+ e) ^0 r! W7 h/ e& }& o6 p& w& N' z7 w" Z
/var/lib/mysql是你数据库文件的目录,部分用户是/usr/local/mysql/data,每个人可能不同  0 D, f* m  j5 K
5 V0 I4 l  p" k
/mysqldata/表示保存备份文件的目录,这个每个人也可以根据自己的要求来做。  . X6 X' V: v" n7 o. Y

; Q$ T$ w( e0 b& _4 q- B5 E5 r3、修改文件属性,使其可执行  
% h+ t& v8 j9 s' x  U% Q. k1 P4 m$ O7 y/ \0 {# a, J
# chmod  x /usr/sbin/bakmysql  
6 e+ O$ v- Y0 }1 `
; J" _, v+ Z, s1 {0 m1 K4、修改/etc/crontab  : w7 o$ v; ]  g# m3 q3 w. \/ g
' n! v# c! o* T9 F7 `- \
#vi /etc/crontab  ; E& Y. |# a/ f% t9 c' s; C- R& D

- T. P, f9 S# s8 _  {5 X% e在下面添加  
* a" s) h% s5 ~5 O/ I' q5 f5 S, a
01 3 * * * root /usr/sbin/bakmysql  
& H! V  v  N' m  I8 _- `- F3 `
* M. y0 s/ b& P& p! D表示每天3点钟执行备份  
7 Y( k6 }' Z0 l/ \
1 S7 {9 b' f1 A/ x* G1 N' ^. w5、重新启动crond  % b, Z: q, P  A+ s
5 `7 @& @5 `, v% W4 \6 k
# /etc/rc.d/init.d/crond restart  ; S, I8 ^8 W" w/ A- A

2 ?! a) m: C2 B8 X  M' s8 ?完成。  
- C* m, w! |9 R5 ]$ u, K/ d  c. t/ H- l. Y) O# k) t: P1 @7 z
这样每天你在/mysqldata可以看到这样的文件  & [8 n/ Y* S  [6 K

9 W3 I( s5 W9 f. E" Tmysql20040619.tar.gz  0 }- P  P; }- \: p, l+ t# u3 P

8 C* O- V% a, S你直接下载就可以了。
( m( P: l8 K0 o3 r% a( u# V5 ^' I
+ g& c0 ]" p; u  s0 n在tar命令执行前,停止数据库服务进程或锁定数据库,  2 Q4 e% g3 V+ r' \7 T5 H: A5 T

& Y8 T( j8 Y! a) w% r$ h* O否则恢复数据时,会出现数据库损坏的情形,运气好时可修复,运气不好时就不可以了。



点击图标进入精品网摘收藏 欢迎大家加入网络收藏夹

TOP

发新话题