云的docker的mysql数据丢失,被黑客攻击的解决方法

docker的mysql数据丢失,被黑客攻击

1、第一步进入docker的容器中。

复制代码
docker exec -it mysql mysql -uroot -p123456

2、进入mysql查看权限

markdown 复制代码
use mysql;
select host,user,authentication_string from mysql.user;

3、查看binlog

复制代码
mysql> SHOW VARIABLES LIKE 'log_bin%';
+---------------------------------+-----------------------------+
| Variable_name                   | Value                       |
+---------------------------------+-----------------------------+
| log_bin                         | ON                          |
| log_bin_basename                | /var/lib/mysql/binlog       |
| log_bin_index                   | /var/lib/mysql/binlog.index |
| log_bin_trust_function_creators | OFF                         |
| log_bin_use_v1_row_events       | OFF                         |
+---------------------------------+-----------------------------+

4、查询是否有binlog日志

root@VM-12-13-opencloudos \~\]# cd /home/mysql/data \[root@VM-12-13-opencloudos data\]# ls auto.cnf binlog.000003 binlog.000007 ca.pem '#ib_16384_1.dblwr' ib_logfile1 mysql.ibd server-cert.pem undo_002 bb92e54a9f51.err binlog.000004 binlog.000008 client-cert.pem ib_buffer_pool ibtmp1 performance_schema server-key.pem binlog.000001 binlog.000005 binlog.index client-key.pem ibdata1 '#innodb_temp' private_key.pem sys binlog.000002 binlog.000006 ca-key.pem '#ib_16384_0.dblwr' ib_logfile0 mysql public_key.pem undo_00 #### 5、使用binlog恢复 mysqlbinlog --start-position=起始位置 --stop-position=结束位置 binlog.000007 \| mysql -u 用户名 -p 先备份当前而 mysqldump -uroot -p T > /path/xxx.sql; # 备份数据库 show master status; # 查看当前的position位置,此时值为154 #### 7.通过mysqlbinlog命令从binlog日志中导出可执行的SQL文件,并将数据导入到mysql docker exec -it mysql bash cd var/lib/mysql mysqlbinlog /var/lib/mysql/binlog.000007 | mysql -uroot -p 123456 提示失败 ERROR: Binlog has bad magic number; It's not a binary log file that can be used by this version #### 8、还是修改密码吧 ```markdown ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456!'; flush privileges; docker exec -it mysql mysql -uroot -p123456 use mysql; select host,user,authentication_string from mysql.user; 发现远程登录 需要个新密码了。 ```

相关推荐
nbsaas-boot2 小时前
Java 正则表达式白皮书:语法详解、工程实践与常用表达式库
开发语言·python·mysql
乌托邦的逃亡者2 小时前
Docker的/var/lib/docker/目录占用100%的处理方法
运维·docker·容器
sun0077004 小时前
mysql索引底层原理
数据库·mysql
程序员秘密基地4 小时前
基于html,css,vue,vscode,idea,,java,springboot,mysql数据库,在线旅游,景点管理系统
java·spring boot·mysql·spring·web3
OKUNP6 小时前
Docker高级管理--容器通信技术与数据持久化
docker·容器·php
叁沐7 小时前
MySQL 11 怎么给字符串字段加索引?
mysql
用户6855449692739 小时前
第一周作业
docker
淮北49412 小时前
最简单的实验室资产管理系统,使用Flask,mysql,html(四、知识补充)
mysql·flask·html
星辰云-12 小时前
【超详细】CentOS系统Docker安装与配置一键脚本(附镜像加速配置)
linux·docker·centos
神仙别闹13 小时前
基于Java+MySQL实现(Web)可扩展的程序在线评测系统
java·前端·mysql