当前位置:网站首页>docker 部署mysql8.0
docker 部署mysql8.0
2022-07-01 18:38:00 【51CTO】
这个平台第一篇博客记录下,哈哈哈哈
有一说一,这些文档还挺不错的
拉去mysql镜像
[[email protected] ~]# docker pull mysql:8.0
8.0.27: Pulling from library/mysql
72a69066d2fe: Pulling fs layer
93619dbc5b36: Pulling fs layer
99da31dd6142: Pulling fs layer
626033c43d70: Pull complete
37d5d7efb64e: Pull complete
ac563158d721: Pull complete
d2ba16033dad: Pull complete
688ba7d5c01a: Pull complete
00e060b6d11d: Pull complete
1c04857f594f: Pull complete
4d7cfa90e6ea: Pull complete
e0431212d27d: Pull complete
Digest: sha256:e9027fe4d91c0153429607251656806cc784e91493271037f7738bd5b8e7709
Status: Downloaded newer image for mysql:8.0
docker.io/library/mysql:8.0
创建映射挂载卷目录
[[email protected] mysql8]# pwd
/opt/mysql8
[[email protected] mysql8]# mkdir conf
[[email protected] mysql8]# mkdir logs
[[email protected] mysql8]# mkdir data

在conf目录新建my.cnf
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
secure-file-priv= NULL
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
# Custom config should go here
!includedir /etc/mysql/conf.d/
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
运行容器
docker run --restart=always \
-v /opt/mysql8/conf/my.cnf:/etc/mysql/my.cnf \
-v /opt/mysql8/logs:/logs \
-v /opt/mysql8/data/:/var/lib/mysql \
-p 3310:3306 \
--name mysql8 \
-d mysql:8.0 \
-e MYSQL_ROOT_PASSWORD='123123' \
--privileged=true \
--character-set-server=utf8mb4
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
参数解析
参数 | 含义 |
--restart=always | 当 Docker 重启时,容器自动启动 |
--name | 起别名 |
-p 3306:3306 | 映射端口 |
-v | 目录挂载 |
d mysql:8.0 | 指定运行版本 |
-e MYSQL_ROOT_PASSWORD=‘密码’ | 设置root用户密码 |
--privileged=true | 赋予系统root权限 |
--character-set-server=utf8mb4 | 设置字符集为utf8mb4 |
操作步骤
(一)、新建文件
[[email protected] mysql8]
# pwd
/opt/mysql8
[[email protected] mysql8]
# mkdir conf
[[email protected] mysql8]
# mkdir logs
[[email protected] mysql8]
# mkdir data
- 1.
- 2.
- 3.
- 4.
- 5.
(二)、拉取mysql8.0镜像
[[email protected] ~]
# docker pull mysql:8.0
8.0: Pulling from library/mysql
72a69066d2fe: Pulling fs layer
93619dbc5b36: Pulling fs layer
99da31dd6142: Pulling fs layer
626033c43d70: Pull complete
37d5d7efb64e: Pull complete
ac563158d721: Pull complete
d2ba16033dad: Pull complete
688ba7d5c01a: Pull complete
00e060b6d11d: Pull complete
1c04857f594f: Pull complete
4d7cfa90e6ea: Pull complete
e0431212d27d: Pull complete
Digest: sha256:e9027fe4d91c0153429607251656806cc784e91493271037f7738bd5b8e7709
Status: Downloaded newer image
for mysql:8.0
docker.io/library/mysql:8.0
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
(三)、在conf目录新建my.cnf
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
secure-file-priv= NULL
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
# Custom config should go here
!includedir /etc/mysql/conf.d/
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
(四)、在conf目录新建my.cnf
docker run --restart=always -d \
-v /opt/mysql8/conf/my.cnf:/etc/mysql/my.cnf \
-v /opt/mysql8/logs:/logs \
-v /opt/mysql8/data:/var/lib/mysql \
-p 3310:3306 \
--name mysql8 \
-e MYSQL_ROOT_PASSWORD='123123' \
--privileged=true --restart unless-stopped mysql:8.0 \
--character-set-server=utf8mb4
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
(五)、验证mysql版本
获取容器名
[[email protected] ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8082f1 mysql:8.0 " t.s…" ago hours 33060/tcp 06>3306/tcp mysql8
- 1.
- 2.
- 3.

进入容器内部查看mysql版本

输入mysql -uroot -p ,输入部署的密码即可,8.0.29这是最新的8版本
[email protected]:/# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.29 MySQL Community Server - GPL
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
修改密码
使用select user,plugin from user where user='root'; 查看加密方式
上面的语句执行后,服务器记得开启外网端口,使用数据库软件进行连接
使用数据库软件进行连接

边栏推荐
- 12. Design of power divider for ads usage record
- Lumiprobe Lumizol RNA 提取试剂解决方案
- Mysql database design
- Reading notes series "modern methods of C language programming" -- Chapter 2
- Lumiprobe非荧光炔烃丨EU(5-乙炔基尿苷)
- Implement a Prometheus exporter
- R language ggplot2 visualization: gganimate package transition_ Time function to create dynamic scatter animation (GIF), shadow_ The wake function configures the gradient falloff tailing effect of the
- Blue Bridge Cup real topic: the shortest circuit
- [Chongqing Guangdong education] basic psychology reference materials of Tianjin Normal University
- [source code analysis] model parallel distributed training Megatron (5) -- pipestream flush
猜你喜欢

3、《创建您自己的NFT集合并发布一个Web3应用程序来展示它们》在本地铸造 NFT

C# SelfHost WebAPI (2)

Lumiprobe lumizol RNA extraction reagent solution

Lumiprobe biomolecular quantification - qudye Protein Quantification Kit

Cloud computing - make learning easier

Leetcode-141环形链表

主成分计算权重

Leetcode-83 删除排序链表中重复的元素

540. Single element in ordered array / 1684 Count the number of consistent strings

Lumiprobe non fluorescent alkyne EU (5-ethynyluridine)
随机推荐
Force buckle day33
The 13th simulation problem of the single chip microcomputer provincial competition of the Blue Bridge Cup
1380. Lucky number in matrix / 1672 Total assets of the richest customers
Must see, time series analysis
Bernoulli distribution (a discrete distribution)
字节跳动数据平台技术揭秘:基于 ClickHouse 的复杂查询实现与优化
Case study on comprehensive competitiveness of principal components
NSI packaging script add file details
Facebook聊单,SaleSmartly有妙招!
R language ggplot2 visualization: gganimate creates a dynamic histogram animation (GIF), and displays the histogram and enter step by step along a given dimension in the animation_ Growth function and
R语言ggplot2可视化:gganimate创建动态柱状图动画(gif)、在动画中沿给定维度逐步显示柱状图、enter_grow函数和enter_fade函数控制运动内插退出(渐变tweening)
Is Alipay wallet convenient to use?
Financial judgment questions
[image denoising] matlab code for removing salt and pepper noise based on fast and effective multistage selective convolution filter
How does factor analysis calculate weights?
R语言使用epiDisplay包的dotplot函数通过点图的形式可视化不同区间数据点的频率、使用pch参数自定义指定点图数据点的形状
[noip2015] jumping stone
Computer network interview assault
Static timing analysis (STA) in ic/fpga design
Implement a Prometheus exporter