大连电子商务网站建设,网站诊断与优化的作用,韩国手表网站,飞虹网架建设官方网站之前自己在网上找了一些docker安装mysql8的方法#xff0c;结果都不行#xff0c;于是自己根据自己遇到的情况再结合网上搜索到的安装方式调整了一下#xff0c;成功执行安装。以下是我自己的执行命令 先拉取docekr镜像
docker pull mysql:8.0.20启动镜像
docker run -p 3… 之前自己在网上找了一些docker安装mysql8的方法结果都不行于是自己根据自己遇到的情况再结合网上搜索到的安装方式调整了一下成功执行安装。以下是我自己的执行命令 先拉取docekr镜像
docker pull mysql:8.0.20启动镜像
docker run -p 3306:3306 --name mysql8 -e MYSQL_ROOT_PASSWORD123456 -d mysql:8.0.20创建挂载目录
mkdir -p /docker/mysql8.0.20/复制目录下的文件到本地
docker cp mysql:/etc/mysql /home/mysql8.0.20/进入到目录下
cd /home/mysql8.0.20/mysql/conf.d创建mysql的配置
vim my.cnf将以下内容直接复制到文件中可根据自己具体需求更改
[mysqld]
usermysql
character-set-serverutf8
default_authentication_pluginmysql_native_password
secure_file_priv/var/lib/mysql
expire_logs_days7
sql_modeSTRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections1000[client]
default-character-setutf8[mysql]改了之后直接复制所有文件到我们的挂载目录下
cp -r /home/mysql8.0.20/* /docker/mysql8.0.20/停止容器
docker stop mysql8删除容器
docker rm -f mysql8自己找一个目录创建启动脚本以免后续使用忘记命令
vim mysql8.0.20-start.sh启动脚本内容如下
#!/bin/sh
docker run \
-p 3306:3306 \
--name mysql8 \
--privilegedtrue \
--restart unless-stopped \
-v /docker/mysql8.0.20/mysql:/etc/mysql \
-v /docker/mysql8.0.20/logs:/logs \
-v /docker/mysql8.0.20/data:/var/lib/mysql \
-v /etc/localtime:/etc/localtime \
-v /docker/mysql8.0.20/mysql-files:/var/lib/mysql-files/ \
-e MYSQL_ROOT_PASSWORD123456 \
-d mysql:8.0.20执行脚本
sh mysql8.0.20-start.sh查看一下容器是否正常启动
docker ps 容器正常的情况下进入容器
docker exec -it mysql8 bash在容器内登录mysql mysql -u root -p密码先试试看我们设置的123456如果不行直接点击回车键因为初始密码设置失败的话密码默认为空。
执行以下命令给root赋权和改密码
-- 给root账号分配权限默认的连接方式是localhost
grant all PRIVILEGES on *.* to root% WITH GRANT OPTION;
-- 设置root的密码并设置密码永不过期
ALTER user root% IDENTIFIED BY 123456 PASSWORD EXPIRE NEVER;
-- 更改用户的身份验证方法为原神的密码验证方式
ALTER user root% IDENTIFIED WITH mysql_native_password BY 123456;
-- 刷新权限应用
FLUSH PRIVILEGES;这时就可以通过工具连接mysql了