


使用service start mysqld是不行的
使用 service —status-all查看服务会什么都查询不到。
在docker里边重启mysql服务不能这样使用。需要找到mysql的服务位置执行一下即可。
重启docker下mysql服务步骤
1:进入mysql所在容器后,在进入usr/sbin下面
2:进入usr/sbin后可以使用ls查看文件看到mysqld这个文件
3:直接输入mysqld即可,就会启动了这个服务了,如果正在启动中你可以先停掉
注意启动mysqld服务可能会造成docker容器停掉,你重新启动一下对应的docker容器就Ok
重置docker下安装的mysql密码
一: 设置免密码登陆
修改docker.cnf文件添加一行skip-grant-tables即可。
1:编辑docker.cnf
vim /etc/mysql/conf.d/docker.cnf
2:添加skip-grant-tables
修改后docker容器可能会停掉,重启一下docker容器就行
二: 重置密码
update user set authentication_string = ‘123456’ where user = ‘root’;
或者先把root密码设置为空:
update user set authentication_string = ‘’ where user = ‘root’;
然后用空密码进去修改密码
mysql -u root -p //提示输入密码时直接敲回车,刚刚已经将密码置空了
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘abc123!@#’;//有些版本如果密码太简单了可能会报错。
还有mysql5.7.6版本后 废弃user表中 password字段 和 password()方法,所以旧方法重置密码对mysql8.0版本是不行的,注意一下
三: 刷新
flush privileges;
四: 把第一步配置的免密登录干掉
修改docker.cnf去掉skip-grant-tables即可。
五: 可能还需要重启一下mysql服务
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)