Mysql資料庫技術——MEB備份技術
使用MEB進行mysql備份
MEB是一個mysql官方的備份工具,具有
使用meb時,我們先需要在mysql 的配置檔案中新增必要引數
[[email protected] mysql]# vim /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
#慢查詢日誌
slow_query_log=1
long_query_time=3
log-slow-queries=/var/lib/mysql/slow_query.log
#二進位制日誌
log-bin=mysql-bin
#指定預設儲存引擎為Innodb
default-storage-engine=innodb
innodb_data_home_dir = /var/lib/mysql
innodb_data_file_path=ibdata1:10M:autoextend
innodb_log_group_home_dir=/var/lib/mysql
innodb_log_files_in_group=2
innodb_log_file_size=5242880
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
修改完成後重啟mysql伺服器
[[email protected] mysql]# sevice mysqld restart
備份過程
- 全量備份
進去meb的bin目錄,然後執行以下命令
./mysqlbackup –socket=/var/lib/mysql/mysql.sock –user=root –password=[登陸密碼] –backup-dir=/opt/backup/(執行符)
date +%F
(執行符) backup
然後我們可以在/opt/backup 目錄下找到我們備份的以當前日期命令的目錄。 2.增量差異備份 當我們繼續增加資料時,就需要用用到差量備份。
注: start-lsn 引數是全量備份的END LSN 號。 這個LSN號可在以下兩個檔案中找到。./mysqlbackup –socket=/var/lib/mysql/mysql.sock –user=root –password=[登陸密碼] –incremental –start-lsn=524590836 –incremental-backup-dir=/opt/backup/(執行符)
date +%F
(執行符) backup
- backup/_variables.txt
- MEB-2018-0316.23-17-55_backup.log
當我們有多個增量時,按照全量-增量一-增量二… 恢復
3.執行copy-back 命令
./mysqlbackup –defaults-file=/etc/my.cnf –backup-dir=/opt/backup/2018-03-16/ copy-back
這時候你就會發現你的資料檔案已經恢復到了你的資料目錄中
我們重啟伺服器
[[email protected] mysql]# sevice mysqld restart
會發現資料庫重啟失敗。
這可能是由於在資料目錄下的許可權和使用者組不是mysql
我們這時候就需要給予其許可權
[[email protected] mysql]# chown musql.mysql /var/lib/mysql
此時我們再次重啟資料庫就會發現資料庫重啟成功。
驗證
我們使用我們之前的使用者名稱和密碼登陸
[[email protected] mysql]# mysql -uroot -p[登陸密碼]
如果登陸成功,檢視資料庫和表是否還原,還原的話資料還原就成功了。