一、破解思路:
- 工作中线上服务器是不能随便重启的,适合破解线上数据库服务器管理员root 密码
- 用已知密码的服务器上的mysql文件覆盖忘记密码的服务器上mysql文件
- 不重启服务,重新加载配置
二、实操:
第一步:覆盖本机的mysql文件
- 拷贝Host51的mysql库,覆盖本机的mysql库
[root@host50 ~]# scp -r 192.168.88.51:/var/lib/mysql/mysql /var/lib/mysql/
第二步:重新加载配置
# 没有pstree命令的话 安装 psmisc软件
[root@host50 ~]# which pstree || yum –y install psmisc
# 查看mysqld服务父进程PID号,
[root@host50 ~]# pstree -p | grep mysqld | head -1
mysqld(1130)-+-{mysqld}(1318)
# 查看信号列表
[root@host50 ~]# kill -l (小写L)
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM
16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
.....
# 重新加载数据库目录下的文件
[root@host50 ~]# kill -SIGHUP 1130
[root@host50 ~]# kill -1 1130
第三步:验证
- 重新登录验证,现在Host50主机登录数据库密码和Host51的root密码一样
[root@host50 ~]# mysql -uroot -pNSD2022…a
Mysql>
网友评论