docker 启动mysql以及问题 -e MYSQL_ROOT_PASSWORD=my-secret-pw

一、问题描述

今天用kitematic安装了最新版的mysql,自动启动报没设置密码错误

error: database is uninitialized and password option is not specified
  You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD


截图如下:

docker 启动mysql以及问题 -e MYSQL_ROOT_PASSWORD=my-secret-pw

错误提示很明显

“数据库未初始化,密码没设置。你需要设置MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD三个中的任意一项”

其中 MYSQL_ROOT_PASSWORD即root账户的密码。

MYSQL_ALLOW_EMPTY_PASSWORD即允许密码为空。

MYSQL_RANDOM_ROOT_PASSWORD随机一个root账户密码。

二、解决

设置端口信息

docker 启动mysql以及问题 -e MYSQL_ROOT_PASSWORD=my-secret-pw

我们通过环境变量设置root密码

docker 启动mysql以及问题 -e MYSQL_ROOT_PASSWORD=my-secret-pw

 

环境变量这里 新增一项

MYSQL_ROOT_PASSWORD   然后右侧输入密码

然后 “save”后mysql重启正常

docker 启动mysql以及问题 -e MYSQL_ROOT_PASSWORD=my-secret-pw

然后通过navcat连接,发现一切OK

docker 启动mysql以及问题 -e MYSQL_ROOT_PASSWORD=my-secret-pw

或者用命令行运行

docker run -d -P -e MYSQL_ROOT_PASSWORD=root mysql

 

如果觉得本文对你有帮助,欢迎点赞,欢迎关注我,如果有补充欢迎评论交流,我将努力创作更多更好的文章。