首頁  >  文章  >  資料庫  >  Linux下實作MySQL資料庫自動備份的實例詳解

Linux下實作MySQL資料庫自動備份的實例詳解

零下一度
零下一度原創
2017-06-27 09:21:161340瀏覽

1.為mysql建立使用者備份的角色,並且授予角色SELECT, RELOAD, SHOW DATABASES, LOCK TABLES等權限。

mysql> create user 'backuper'@'localhost' identified by '********';
Query OK, 0 rows affected (0.00 sec)

mysql> grant SELECT, RELOAD, SHOW DATABASES, LOCK TABLES on *.* to backuper@localhost;
Query OK, 0 rows affected (0.00 sec)


2.在系統中找到儲存空間比較大的硬碟建立備份目錄,並且建立shell腳本

[root@qxyw backup]# vim backup_qianyu_veeker_db.sh

#!/bin/bash
mysqldump -ubackuper -p******** qianyu_veeker_db > /home/mysql/backup/qianyu_veeker_db_$(date +%Y%m%d_%H%M%S).sql


注意:-u和使用者名稱中間是沒有空格的,-p和密碼也是這樣的。

3.新增計劃任務,需要安裝crontab
vixie-cron 軟體包是cron 的主程式;
crontabs 軟體包是用來安裝、卸載、或列出用來驅動cron 守護程式的表格的程式。

[root@qxyw ~]# yum -y install vixie-cron
[root@qxyw ~]# yum -y install crontabs


4.設定開機啟動

[root@qxyw ~]# chkconfig --level 345 crond on


5.修改/etc/crontab文件,新增需要週期執行的任務

[root@qxyw etc]# vim crontab

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |# *  *  *  *  * user-name command to be executed0 0 * * * /home/mysql/backup/backup_qianyu_veeker_db.sh


6.啟動crontab服務

[root@qxyw etc]# service crond start
Starting crond: [  OK  ]

 ,

以上是Linux下實作MySQL資料庫自動備份的實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn