解决在docker中部署mysql8, 密码正确但无法登陆MySQL问题
1、创建并启动容器,不要设置登录密码$ docker run -p 3306:3306 --name mysql8 --privileged=true --restart unless-stopped -v$PWD/conf:/etc/mysql/conf.d -v$PWD/logs:/logs -v$PWD/data:/var/lib/mysql -v /etc/localtime:/etc/l
·
1、创建并启动容器,不要设置登录密码
$ docker run -p 3306:3306 --name mysql8 --privileged=true --restart unless-stopped -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -v /etc/localtime:/etc/localtime -e -d mysql:8.0.26
2、进入容器
$ docker exec -it mysql bash
3、修改配置文件
3.1 进入 /etc/mysql/conf.d
文件目录:
$ cd /etc/mysql/conf.d
3.2 创建MySQL配置文件:mysql.cnf
$ touch mysql.cnf
3.3 在 mysql.cnf
配置文件中填充以下内容
[mysqld]
# 跳过密码登录
skip-grant-tables
3.4 退出容器,重启mysql容器
$ exit
$ docker restart mysql
4、设置MySQL登录密码
4.1 重新进入MySQL容器,登录MySQL
$ docker exec -it mysql bash
$ mysql -uroot -p # 不用输入密码,直接两次回车即可
4.2 进入 mysql
表
$ use mysql
4.3 设置MySQL登录密码
$ ALTER user 'root'@'%' IDENTIFIED BY '你将要设置的密码';
4.4 刷新权限
$ flush privileges;
以上即是所有内容,接下来正常使用即可。
更多推荐
已为社区贡献1条内容
所有评论(0)