Linux系统CentOS 7.6 Docker 安装 MySQL8.0 详细步骤

系列文章目录

Linux系统CentOS 7.6 安装 JDK1.8 详细步骤
Linux系统CentOS 7.6 安装 Docker 详细步骤
Linux系统CentOS 7.6 Docker 安装 MySQL 详细步骤
Linux系统CentOS 7.6 Docker 安装 Redis 详细步骤
Linux系统CentOS 7.6 Docker 安装 Nacos 详细步骤
Linux系统CentOS 7.6 Docker 安装 RabbitMQ 详细步骤
Linux系统CentOS 7.6 Docker 安装 Nginx 详细步骤
Linux系统CentOS 7.6 Docker 安装 Jenkins详细步骤

文章目录

  • 系列文章目录
  • 一、Docker 拉取安装MySQL
    • 1.查看可用的 MySQL 版本
    • 2.拉取官方的最新版本的镜像
    • 3.查看本地镜像,是否已经有 mysql镜像
    • 4.安装完成,运行 mysql 容器
      • 1、创建数据挂载文件夹
      • 2、编写my.cnf文件
      • 3、启动mysql容器
    • 5.通过 docker ps 命令查看是否安装成功
    • 6.设置MySQL容器开机自启
  • 二、使用客户端工具连接MySQL


一、Docker 拉取安装MySQL

1.查看可用的 MySQL 版本

代码如下:

docker search mysql

Linux系统CentOS 7.6 Docker 安装 MySQL8.0 详细步骤_第1张图片

2.拉取官方的最新版本的镜像

代码如下:

拉取指定版本
docker pull mysql:8.0

或者拉取最新版本
docker pull mysql:latest

Linux系统CentOS 7.6 Docker 安装 MySQL8.0 详细步骤_第2张图片

3.查看本地镜像,是否已经有 mysql镜像

代码如下:

docker images

Linux系统CentOS 7.6 Docker 安装 MySQL8.0 详细步骤_第3张图片

4.安装完成,运行 mysql 容器

1、创建数据挂载文件夹

为了避免数据在移除容器的时候丢失,把mysql容器里的目录挂载在服务器的目录上
如果不是root运行docker命令,要先创建目录

mkdir -p /usr/local/mysql/data
mkdir -p /usr/local/mysql/mysql-files
mkdir -p /usr/local/mysql/conf
mkdir -p /usr/local/mysql/logs

2、编写my.cnf文件

在目录/usr/local/docker/mysql/conf里新建文件:my.cnf

vim /usr/local/mysql/conf/my.cnf

添加以下内容到上述创建的配置文件中

#Apply this config only on the master.
[client]
port = 3306
default-character-set = utf8mb4

[mysql]
port = 3306
default-character-set = utf8mb4

[mysqld]
# bind-address = 0.0.0.0
# port = 3306
lower_case_table_names=1

max_connections=10000

character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

# 设置时区和字符集
# default-time-zone='+8:00'
character-set-client-handshake=FALSE
init_connect='SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci'

gtid-mode=ON
enforce-gtid-consistency = ON

3、启动mysql容器

代码如下:

docker run  \
--restart=always \
--name mysql \
-v /usr/local/mysql/conf:/etc/mysql \
-v /usr/local/mysql/data:/var/lib/mysql \
-v /usr/local/mysql/logs:/var/log \
-v /usr/local/mysql/mysql-files:/var/lib/mysql-files \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:8.0

或者

docker run -p 3306:3306 --name mysql \ 
-v /usr/local/mysql/conf.d:/etc/mysql/conf.d \ 
-v /usr/local/mysql/logs:/var/log/mysql \ 
-v /usr/local/mysql/data:/var/lib/mysql \ 
-e MYSQL_ROOT_PASSWORD=123456 \ 
-d mysql:8.0

参数说明:
–restart=always #容器在docker启动的时候,mysql容器也会跟着启动

–name mysql #给容器取别名

-v /usr/local/mysql/data:/var/lib/mysql #挂载目录,就是把容器的目录挂载到外面

-p 3306:3306 #映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务

-e MYSQL_ROOT_PASSWORD=root #设置 MySQL 服务 root 用户的密码

-d #后台运行

5.通过 docker ps 命令查看是否安装成功

代码如下:

docker ps -a

6.设置MySQL容器开机自启

代码如下:

docker update mysql --restart=always  或者 docker update --restart=always b501d9daf1ae(最后一项为MySQL容器的CONTAINER ID)

附加:启动Docker,设置开机自启命令:

systemctl start docker
systemctl enable docker

二、使用客户端工具连接MySQL

方式一:本机可以通过账号:root 和密码:123456 连接访问 MySQL 服务
代码如下:
先进入容器命令:docker exec -it mysql bash

mysql -h localhost -u root -p

回车之后输入密码:123456,再按回车即可
Linux系统CentOS 7.6 Docker 安装 MySQL8.0 详细步骤_第4张图片
方式二:通过Navicat连接
Linux系统CentOS 7.6 Docker 安装 MySQL8.0 详细步骤_第5张图片

到这里MySql数据库就安装完成了


你可能感兴趣的:(Linux系列,docker,linux,centos)