mysql数据恢复

前提条件

容器数据库配文件开启bin-log

#标识该语句最初从哪个server写入
server-id = 1
log-bin = /var/lib/mysql/mysql-bin

操作如下

[root@wuweixiang javaweb-compose]# docker ps
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                                                    NAMES
c9c5050353b3        javaweb-compose_tomcat         "catalina.sh run"        35 minutes ago      Up 35 minutes       0.0.0.0:8080->8080/tcp                                                   tomcat-8.5.35-jre8
d8c396c5afb7        javaweb-compose_redis_slave    "docker-entrypoint.s…"   35 minutes ago      Up 35 minutes       6379/tcp, 0.0.0.0:6380->6380/tcp                                         redis-slave-5.0.2
d4678fc3525c        javaweb-compose_redis_master   "docker-entrypoint.s…"   35 minutes ago      Up 35 minutes       0.0.0.0:6379->6379/tcp                                                   redis-master-5.0.2
e7fa5e29dc5a        javaweb-compose_mysql          "docker-entrypoint.s…"   35 minutes ago      Up 35 minutes       33060/tcp, 0.0.0.0:3308->3306/tcp                                        mysql-5.7
57ed6cfc9b24        javaweb-compose_activemq       "/app/run.sh"            35 minutes ago      Up 35 minutes       1883/tcp, 5672/tcp, 61613-61614/tcp, 61616/tcp, 0.0.0.0:8161->8161/tcp   activemq-5.14.3
d410aa3412c3        portainer/portainer            "/portainer"             22 hours ago        Up 22 hours         0.0.0.0:9000->9000/tcp                                                   portainer
[root@wuweixiang javaweb-compose]# docker exec -it e bash
root@mysql:/# cd /var/lib/mysql/
root@mysql:/var/lib/mysql# ls
aaa      ca-key.pem  client-cert.pem  ib_buffer_pool  ib_logfile1  ibtmp1  mysql-bin.000001  mysql-bin.000003    mysql-bin.000005  mysql-slow.log  mysqld-error.log    private_key.pem  server-cert.pem    sys
auto.cnf  ca.pem      client-key.pem   ib_logfile0     ibdata1        mysql   mysql-bin.000002  mysql-bin.000004    mysql-bin.index   mysql.log      performance_schema  public_key.pem   server-key.pem


root@mysql:/var/lib/mysql# mysqlbinlog --no-defaults mysql-bin.000004

通过前面操作步骤我们知道,在删除数据之前,我们生成了 mysql-bin.000005 日志文件,所以我们只要恢复到这个时间点即可,上图中我已找到了这个时间。

命令如下:

root@mysql:/var/lib/mysql# mysqlbinlog --no-defaults --stop-datetime='2018-12-12 15:33:29' /var/lib/mysql/mysql-bin.000004 |mysql -uroot -p
Enter password: 

再看数据库数据,恢复成功。

转载于:https://my.oschina.net/wuweixiang/blog/2987390

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值