小编给大家分享一下mysql数据库误删除后怎么办,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!(1)在ops库下创建一张表customersmysql> use ops;
mysql> create table customers(
-> id int not null auto_increment,
-> name char(20) not null,
-> age int not null,
-> primary key(id)
-> )engine=InnoDB;
Query OK, 0 rows affected (0.09 sec)mysql> show tables;
+—————+
| Tables_in_ops |
+—————+
| customers |
+—————+
1 row in set (0.00 sec)mysql> desc customers;
+——-+———-+——+—–+———+—————-+
| Field | Type | Null | Key | Default | Extra |
+——-+———-+——+—–+———+—————-+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | char(20) | NO | | NULL | |
| age | int(11) | NO | | NULL | |
+——-+———-+——+—–+———+—————-+
3 rows in set (0.02 sec)mysql> insert into customers values(1,”wangbo”,”24″);
Query OK, 1 row affected (0.06 sec)mysql> insert into customers values(2,”guohui”,”22″);
Query OK, 1 row affected (0.06 sec)m免费主机域名ysql> insert into customers values(3,”zhangheng”,”27″);
Query OK, 1 row affected (0.09 sec)mysql> select * from customers;
+—-+———–+—–+
| id | name | age |
+—-+———–+—–+
| 1 | wangbo | 24 |
| 2 | guohui | 22 |
| 3 | zhangheng | 27 |
+—-+———–+—–+
3 rows in set (0.00 sec)(2)现在进行全备份
[root@vm-002 ~]# mysqldump -uroot -p -B -F -R -x –master-data=2 ops|gzip >/opt/backup/ops_$(date +%F).sql.gz
Enter password:
[root@vm-002 ~]# ls /opt/backup/
ops_2016-09-25.sql.gz(3)再次插入数据
mysql> insert into customers values(4,”liupeng”,”21″);
Query OK, 1 row affected (0.06 sec)mysql> insert into customers values(5,”xiaoda”,”31″);
Query OK, 1 row affected (0.07 sec)mysql> insert into customers values(6,”fuaiai”,”26″);
Query OK, 1 row affected (0.06 sec)mysql> select * from customers;
+—-+———–+—–+
| id | name | age |
+—-+———–+—–+
| 1 | wangbo | 24 |
| 2 | guohui | 22 |
| 3 | zhangheng | 27 |
| 4 | liupeng | 21 |
| 5 | xiaoda | 31 |
| 6 | fuaiai | 26 |
+—-+———–+—–+
6 rows in set (0.00 se免费主机域名c)(4)此时误操作,删除了test数据库
mysql> drop database ops;
Query OK, 1 row affected (0.04 sec)此时,全备之后到误操作时刻之间,用户写入的数据在binlog中,需要恢复出来!(5)查看全备之后新增的binlog文件
[root@vm-002 ~]# cd /opt/backup/
[root@vm-002 backup]# ls
ops_2016-09-25.sql.gz
[root@vm-002 backup]# gzip -d ops_2016-09-25.sql.gz
[root@vm-002 backup]# ls
ops_2016-09-25.sql
[root@vm-002 backup]# grep CHANGE ops_2016-09-25.sql
— CHANGE MASTER TO MASTER_LOG_FILE=’mysql-bin.000002′, MASTER_LOG_POS=106;这是全备时刻的binlog文件位置
即mysql-bin.000002的106行,因此在该文件之前的binlog文件中的数据都已经包含在这个全备的sql文件中了看完了这篇文章,相信你对“mysql数据库误删除后怎么办”有了一定的了解,如果想了解更多相关知识,欢迎关注云技术行业资讯频道,感谢各位的阅读!
相关推荐: ManagerDB备份文件管理与异地备份的方法是什么
本篇内容介绍了“ManagerDB备份文件管理与异地备份的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!ManagerDB 备份文件管理,与异地备份1…