1. 程式人生 > >Mysql資料庫技術——MEB備份技術

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

備份過程

  1. 全量備份
    進去meb的bin目錄,然後執行以下命令

    ./mysqlbackup –socket=/var/lib/mysql/mysql.sock –user=root –password=[登陸密碼] –backup-dir=/opt/backup/(執行符)date +%F(執行符) backup


然後我們可以在/opt/backup 目錄下找到我們備份的以當前日期命令的目錄。 2.增量差異備份 當我們繼續增加資料時,就需要用用到差量備份。

./mysqlbackup –socket=/var/lib/mysql/mysql.sock –user=root –password=[登陸密碼] –incremental –start-lsn=524590836 –incremental-backup-dir=/opt/backup/(執行符)date +%F

(執行符) backup

注: start-lsn 引數是全量備份的END LSN 號。 這個LSN號可在以下兩個檔案中找到。
  1. backup/_variables.txt
  2. 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[登陸密碼]

如果登陸成功,檢視資料庫和表是否還原,還原的話資料還原就成功了。