使用MEB进行mysql备份
MEB是一个mysql官方的备份工具,具有
使用meb时,我们先需要在mysql 的配置文件中添加必要参数
[root@Wang-01 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服务器
[root@Wang-01 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
这时候你就会发现你的数据文件已经恢复到了你的数据目录中
我们重启服务器
[root@Wang-01 mysql]# sevice mysqld restart
会发现数据库重启失败。
这可能是由于在数据目录下的权限和用户组不是mysql
我们这时候就需要给予其权限
[root@Wang-01 mysql]# chown musql.mysql /var/lib/mysql
此时我们再次重启数据库就会发现数据库重启成功。
验证
我们使用我们之前的用户名和密码登陆
[root@Wang-01 mysql]# mysql -uroot -p[登陆密码]
如果登陆成功,查看数据库和表是否还原,还原的话数据还原就成功了。