禹州市城乡建设局网站,wordpress栏目标题,超凡网络网站,网站模板制作五、使用docker安装mysql
注意#xff1a;
因为电脑是AMD芯片#xff0c;自己知识储备不够#xff0c;无法保证和课程中用到的环境一样#xff0c;所以环境都是自己根据适应硬件软件环境重新配置的#xff0c;这里的虚拟机使用的是VMware。 使用 Docker 安装 MySQL 与安…五、使用docker安装mysql
注意
因为电脑是AMD芯片自己知识储备不够无法保证和课程中用到的环境一样所以环境都是自己根据适应硬件软件环境重新配置的这里的虚拟机使用的是VMware。 使用 Docker 安装 MySQL 与安装 Redis 类似以下是详细步骤
1拉取 MySQL 镜像
从 Docker Hub 之前有设置之镜像加速拉取 MySQL 的官方镜像。可以指定版本号或者使用 latest 来获取最新版本
docker pull mysql:latest2运行 MySQL 容器
运行 MySQL 容器时我需要设置环境变量如 MYSQL_ROOT_PASSWORDroot 用户的密码并映射端口和数据卷。以下是一个示例命令
docker run --name some-mysql -p 3306:3306 \-v /var/lib/mysql:/var/lib/mysql \-e MYSQL_ROOT_PASSWORDmy-secret-pw \-e MYSQL_DATABASEmydb \-e MYSQL_USERmyuser \-e MYSQL_PASSWORDmypassword \--restart always -d mysql[!NOTE] 注意这里的密码的值不要使用root否则会产生error问题在于我在运行 MySQL 容器时同时设置了 MYSQL_USER 和 MYSQL_PASSWORD 环境变量但它们的值被设置为了 root。对于 MySQL 容器MYSQL_USER 和 MYSQL_PASSWORD 是用来配置普通用户的而不能用来配置 root 用户。对于 root 用户的密码我应该只使用 MYSQL_ROOT_PASSWORD 环境变量。 参数说明
--name some-mysql为容器指定一个名称。-p 3306:3306将容器的 3306 端口映射到宿主机的 3306 端口。-v /var/lib/mysql:/var/lib/mysql将宿主机的 /var/lib/mysql 目录挂载到容器的 /var/lib/mysql 目录实现数据持久化。-e设置环境变量用于配置 MySQL。--restart always确保容器在 Docker 重启后自动启动。-d mysql以 detached 模式运行 MySQL 容器。
3确认 MySQL 容器正在运行
使用 docker ps 命令检查 MySQL 容器是否成功启动
docker ps4连接到 MySQL 服务器
可以使用 mysql 命令行工具连接到 MySQL 服务器
mysql -uroot -p当提示输入密码时输入我在步骤 2 中设置的 MYSQL_ROOT_PASSWORD。 [!NOTE] 可以直接使用 Docker 容器中的 MySQL 服务但是我需要确保宿主机上安装了 MySQL 客户端或者可以直接在 Docker 容器的命令行中使用 mysql 命令。以下是两种方法【我是用第二种】 方法一在宿主机上使用 MySQL 客户端连接到 Docker 容器中的 MySQL 服务 确保我已经在宿主机上安装了 MySQL 客户端。如果没有请根据我的 Linux 发行版安装它。 使用以下命令连接到 Docker 容器中的 MySQL 服务 mysql -uroot -p -h 127.0.0.1 -P 3306这里 -h 127.0.0.1 指定了宿主机的 IP 地址-P 3306 指定了映射到宿主机的端口号。 当提示输入密码时输入我在创建 MySQL 容器时设置的 MYSQL_ROOT_PASSWORD。 方法二在 Docker 容器的命令行中使用 mysql 命令 首先找到我的 MySQL 容器 ID 或名称 docker ps然后使用 docker exec 命令进入容器的命令行界面 docker exec -it some-mysql /bin/bash将 some-mysql 替换为我的 MySQL 容器名称。 在容器内部直接使用 mysql 命令连接到 MySQL 服务 mysql -uroot -p由于我已经在容器内部不需要指定主机和端口只需输入密码即可。 请注意如果我在容器内部使用 mysql 命令我将直接与 MySQL 服务交互而不需要在宿主机上安装 MySQL 客户端。但是这种方法要求我能够进入容器的命令行界面。如果我只需要偶尔管理 MySQL 数据库通常在宿主机上安装 MySQL 客户端会更方便。 退出mysql容器时用exit命令 5配置 MySQL 时区可选
MySQL 容器默认使用 UTC 时区。如果我需要更改时区可以在启动容器时挂载自定义的 my.cnf 配置文件
docker run ... -v /mycustomconfig/my.cnf:/etc/mysql/my.cnf ...在 my.cnf 文件中可以添加如下配置来设置时区
[mysqld]
default-time-zone08:006安全配置 MySQL可选
MySQL 提供了一个脚本来设置安全选项可以在第一次启动时运行它
docker exec -i some-mysql mysql_secure_installation按照提示操作设置移除匿名用户、禁止 root 用户远程登录等安全选项。
大学生制作不易各位愿意的话可以打赏不愿意的话也没关系学习最重要。最后哪里写的不合适请告诉我我弄明白后再修正谢谢