Docker 安装 mysql 8.0.29

Posted 杨 戬

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 安装 mysql 8.0.29相关的知识,希望对你有一定的参考价值。

文章目录

安装

拉取镜像

docker pull mysql:8.0.29

启动容器

docker run -p 3306:3306 --name mysql8.0.29 -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0.29

参数说明:

参数说明
-p将本地主机的端口映射到docker容器端口(因为本机的3306端口已被其它版本占用,所以使用3307)
--name容器名称命名
-e配置信息,配置root密码
-d镜像名称

配置(可跳过,建议弄上)

做目录映射我们可以跳过,直接让docker自己去管理容器文件

创建映射目录

mkdir -p /data/mysql/etc,data,logs

拷贝配置文件

docker cp mysql:/etc/mysql /data/mysql/etc/

使用

启动

启动容器

注意:mysql8之后,初始化数据库之后不能修改大小敏感,如果要设置的话启动容器时就要设置,否者删除数据,重新初始化数据库

docker run -p 3306:3306 --name mysql --privileged=true -v /data/mysql/etc/mysql:/etc/mysql -v /data/mysql/logs:/logs -v /data/mysql/data:/var/lib/mysql -v /etc/localtime:/etc/localtime -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.29  --lower_case_table_names=1

参数说明

参数说明
-p 端口映射
--privileged=true 挂载文件权限设置
-v /data/mysql/etc/mysql:/etc/mysql 挂载配置文件
-v /data/mysql/logs:/logs \\挂载日志
-v /data/mysql/data:/var/lib/mysql \\ 挂载数据文件 持久化到主机,
-v /etc/localtime:/etc/localtime 容器时间与宿主机同步
-e MYSQL_ROOT_PASSWORD=123456 设置密码
-d mysql:8.0.29 启动 mysql 容器版本名
--lower_case_table_names=1 1:大小写不敏感,默认0:区分大小写

控制台登录

登录mysql容器

docker exec -it mysql8.0 bash

登录容器中的mysql

注意:现在 -uroot 之间不能有空格了,我打的时候也是,不知道为啥,真是依托答辩

mysql -uroot -p

navicat远程登录

如果使用navicat远程访问数据库,我们需要修改一下数据库的地址信息

use mysql;
UPDATE user SET HOST = '%' WHERE USER ='root';
FLUSH PRIVILEGES;

打开navicat,填写服务器相关信息,就能连接了

删除

删除容器

# 停止运行容器
docker stop mysql
# 移出容器
docker rm mysql

以上是关于Docker 安装 mysql 8.0.29的主要内容,如果未能解决你的问题,请参考以下文章

docker 安装mysql

docker下配置mysql 主从

SqlSugar 连接MySql 8.0.29报错

使用docker搭建mysql服务

使用 mysql 的 Docker 镜像

使用 mysql 的 Docker 镜像