使用Docker安装mysql8

Docker中安装mysql8

​ 本文记录时间为2023-07-04,文档内容主要参照mysql官方文档写成。

一、获取mysql镜像

​ 此处参考mysql官方的文档,从Oracle的镜像库中查找所需的mysql镜像信息,此处选择的是community-server:8.0

# 拉取myssql community-server镜像
docker pull container-registry.oracle.com/mysql/community-server:8.0

二、启动容器

(一)为了便于修改数据库配置和防止容器删除丢失数据,在启动容器前先在本地创建mysql所需配置和数据目录

#1.创建data目录
mkdir -p /demo/applications/mysql/data
#2.创建my.cnf文件
vim /demo/applications/mysql/my.cnf

my.cnf文件内容:

#3.内容如下:
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
init_connect='SET NAMES utf8mb4'
#对sql语句大小写不敏感
lower_case_table_names=1
sql_mode=TRADITIONAL

(二)启动容器

#1.检查镜像信息
docker imgages
#2.启动容器
docker run -p 33307:3306 --name=mysql80 --restart always \
   --mount type=bind,src=/demo/applications/docker-mysql/my.cnf,dst=/etc/my.cnf \
   --mount type=bind,src=/demo/applications/docker-mysql/data,dst=/var/lib/mysql \
   -d container-registry.oracle.com/mysql/community-server:8.0

(三)修改数据库密码,开启远程访问账户
​ 1.在mysql容器启动后,可以使用docker logs命令查看root用户默认密码

docker logs -f mysql80

在这里插入图片描述

​ 2.进入容器中,使用上述获取的root用户密码登录mysql客户端

docker exec -it mysql80 mysql -uroot -p

​ 3.修改root用户信息

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';

​ 4.创建远程登录账户

mysql> CREATE USER 'visitor'@'%' IDENTIFIED BY 'visitorpwd';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'visitor'@'%' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
### 使用 Docker 安装 MySQL 8 教程 #### 查找并拉取 MySQL 8 镜像 为了安装 MySQL 8,首先需要从 Docker Hub 获取相应的镜像。可以通过 `docker search` 命令来浏览可用的 MySQL 版本[^1]。 ```bash docker search mysql ``` 对于特定版本的需求,比如 MySQL 8.0.32,则可以直接指定版本号进行下载: ```bash docker pull mysql:8.0.32 ``` 如果不指明具体标签,默认会下载最新的稳定版[^3]。 #### 创建与配置容器 在成功获取所需镜像之后,下一步就是基于该镜像启动一个新的容器实例。这里提供了一个基本的例子用于创建一个名为 `mysql-container` 的容器,并映射主机端口 3306 到容器内部的服务端口,同时设置 root 用户密码为 'your_password_here': ```bash docker run -d \ --name=mysql-container \ -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD=your_password_here \ mysql:8.0.32 ``` 此命令中的 `-d` 参数表示以后台模式运行容器;而 `-e` 后面跟随的是环境变量定义,在这里是用来设定数据库管理员账户(`root`)初始登录凭证[^5]。 #### 访问和管理 MySQL 数据库 一旦容器正常工作起来后,就可以利用如下指令进入正在运行着 MySQL 实例的 Bash 终端环境中执行 SQL 查询或者其他维护操作了: ```bash docker exec -it mysql-container bash ``` 另外,也可以通过官方推荐的方式连接到 MySQL Server: ```bash docker exec -it mysql-container mysql -uroot -pyour_password_here ``` 这允许用户直接交互式地访问新建立好的 MySQL 数据库服务[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值