繁体   English   中英

在docker容器中重置密码mysql

[英]Reset password mysql in docker container

我在 docker 容器上运行 MySql。 我将它用于我的 WordPress 数据库。 它一直工作正常,但我想检查一些事情,因为我从 WordFence 收到警告,说一个用户是在 Wordpress 之外创建的。

但是,我似乎不记得 root 密码是什么。 按照本指南( https://www.techrepublic.com/article/how-to-set-change-and-recover-a-mysql-root-password/ )我尝试重置密码,但总是出现错误说 mysqld_safe 已经在另一个进程上运行。

当我执行ps -x ,我得到了这个:

  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:00 /bin/sh /usr/bin/mysqld_safe
   92 pts/0    Ss     0:00 bash
  115 pts/0    R+     0:00 ps -x

我似乎无法终止这个过程。 我不知道如何使用 -skip-grant-tables 运行mysqld_safe 我发现更奇怪的是,当我执行service mysql stop ,它说它停止了 mysql,但我仍然可以访问博客 - 只有停止容器才能将其关闭。

关于我可以在这里做什么的任何线索?

我找到了怎么做。

我必须停止容器:

docker stop my-container

然后,我需要将我的容器提交到一个新图像:

docker commit my-container temp-container

我暂时安装了这个:

docker run -it --name some_name -d --entrypoint=bash -v the-volume:/var/lib/mysql temp_container

docker attach some_name

然后,当在 bash 中时,我可以简单地运行mysqld_safe --skip-grant-tables &并像经常在网上解释的那样更改 root 密码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM