mariadb数据库备份与恢复

一、 mariadb数据库备份与恢复
1、 配置mariadb备份与恢复
1)
安装mariadb数据库

[root@centos01 ~]# rm -rf /etc/yum.repos.d/CentOS-*
[root@centos01 ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@centos01 ~]# yum -y install mariadb mariadb-server
2)
启动maridb数据库服务

[root@centos01 ~]# systemctl start mariadb
[root@centos01 ~]# systemctl enable mariadb
3)
设置访问数据库密码

[root@centos01 ~]# mysqladmin -uroot password
New password:
Confirm new password:
2、 配置数据库二进制日志功能
1)
修改主配置文件

[root@centos01 ~]# vim /etc/my.cnf
[mysqld]
log_bin=mysql-bin
2)
重新启动数据库

[root@centos01 ~]# systemctl restart mariadb
3)
查看二进制日志

在这里插入图片描述
3、 备份mariadb数据库
1)
备份benet数据库中的student表

[root@centos01 ~]# mysqldump -uroot -p benet student > benet.student.sql
Enter password:
2)
备份多个数据库benet和mysql数据库

[root@centos01 ~]# mysqldump -uroot -p --database benet mysql > benet.sql
Enter password:
3)
备份所有数据库

[root@centos01 ~]# mysqldump -uroot -p --opt --all-database > all_database.sqlEnter password:
4、 恢复备份的数据库
1)
恢复特定数据库中的表存储到accp数据库

MariaDB [(none)]> drop database benet;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> create database accp;
Query OK, 1 row affected (0.00 sec)
[root@centos01 ~]# mysql -uroot -ppwd@123 accp < ./benet.student.sql
mariadb数据库备份与恢复_第1张图片
2)
恢复数据库

MariaDB [(none)]> drop database benet;
Query OK, 1 row affected (0.01 sec)
MariaDB [mysql]> source ./benet.sql
mariadb数据库备份与恢复_第2张图片
5、 增量恢复数据库
1)
切割日志

[root@centos01 ~]# mysqladmin -uroot -ppwd@123 flush-log
2)
数据库中插入新的数据

MariaDB [(none)]> insert into benet.student values (‘3333’,‘3333333333’);
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> insert into benet.student values (‘4444’,‘4444444444’);
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> insert into benet.student values (‘5555’,‘5555555555’);
Query OK, 1 row affected (0.01 sec)
3)
使用二进制日志恢复误删除数据

MariaDB [mysql]> source ./benet.sql
[root@centos01 ~]# cp mysql-bin.000003 /root/
[root@centos01 ~]# mysqlbinlog --no-defaults ./mysql-bin.000003 | mysql -uroot -p
Enter password:
mariadb数据库备份与恢复_第3张图片
4)
使用起始和结束位置方式恢复误删除数据

MariaDB [mysql]> source ./benet.sql
[root@centos01 ~]# mysqlbinlog mysql-bin.000003
在这里插入图片描述
mariadb数据库备份与恢复_第4张图片
[root@centos01 ~]# mysqlbinlog --no-defaults --start-position=“309” --stop-position=“830” ./mysql-bin.000003 | mysql -uroot -p
Enter password:
mariadb数据库备份与恢复_第5张图片
5)
起始时间和结束时间恢复数据

MariaDB [mysql]> source ./benet.sql
在这里插入图片描述
在这里插入图片描述
[root@centos01 ~]# mysqlbinlog --no-defaults --start-datetime=“2020-04-19 0:15:08” --stop-datetime=“2020-04-19 0:15:12” ./mysql-bin.000003 | mysql -uroot -p
Enter password:
mariadb数据库备份与恢复_第6张图片

你可能感兴趣的:(mariadb)