docker 安装 mysql5.7(全网最详细)

这篇具有很好参考价值的文章主要介绍了docker 安装 mysql5.7(全网最详细)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

安装,以MySql5.7版本为例子。

docker默认的仓库比较慢,可以参考以下文章 第五标题 设置阿里云镜像仓库。

docker (简介、dcoker详细安装步骤、容器常用命令)一站打包- day01-CSDN博客

一、拉去mysql镜像

docker pull mysql:5.7

如下安装完成 

[root@syf ~]# docker pull mysql:5.7

5.7: Pulling from library/mysql
72a69066d2fe: Pull complete 
93619dbc5b36: Pull complete 
99da31dd6142: Pull complete 
626033c43d70: Pull complete 
37d5d7efb64e: Pull complete 
ac563158d721: Pull complete 
d2ba16033dad: Pull complete 
0ceb82207cd7: Pull complete 
37f2405cae96: Pull complete 
e2482e017e53: Pull complete 
70deed891d42: Pull complete 
Digest: sha256:f2ad209efe9c67104167fc609cca6973c8422939491c9345270175a300419f94
Status: Downloaded newer image for mysql:5.7
docker.io/library/mysql:5.7

 查看本地镜像仓库拉去好的mysql,确认版本号

docker images

如下: 

[root@syf ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
mysql        5.7       c20987f18b13   23 months ago   448MB

二、后台运行mysql镜像

2.1 先配置mysql配置文件

 如下流程1,2步骤(复制即可):新建目录  /data/dockerData/mysql/conf,编写 my.config文件

1-新建文件夹
[root@syf/]# mkdir -p /data/dockerData/mysql/conf
[root@syf/]# cd /data/dockerData/mysql/conf

2-创建文件
[root@syf conf]# touch my.config
[root@syf conf]# ls
my.config

3-编写文件内容  (进入后 i 子母键插入,黏贴下面配置,:wq! 保存并退出)
[root@syf conf]# vim my.config 

 my.config 配置文件如下

[mysql]
#设置mysql客户端默认字符集
default-character-set=UTF8MB4
 
[mysqld]
#设置3306端口
port=3306
 
#允许最大连接数
max_connections=200
 
#允许连接失败的次数
max_connect_errors=10
 
#默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
 
#服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=UTF8MB4
 
#开启查询缓存
explicit_defaults_for_timestamp=true
 
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
 
#等待超时时间秒
wait_timeout=60
 
#交互式连接超时时间秒
interactive-timeout=600
secure_file_priv=/var/lib/mysql
 
[client]
default-character-set=UTF8MB4
 2.2 运行mysql容器

注意:

  • 修改字符集编码需要重启容器,完成后要在 服务器上查看字符集。
  • 挂载数据卷:实例删除后数据依存在
docker run  --privileged -d -p 3306:3306 -v /data/dockerData/mysql/conf/my.config:/etc/mysql/my.config -v /data/dockerData/mysql/logs:/logs -v /data/dockerData/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234 --name mysql5.7 容器id

运行如下: 

1-查看镜像id,即IMAGE ID
[root@syf conf]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
mysql        5.7       c20987f18b13   23 months ago   448MB

2-后台运行镜像,创建数据卷,指定3306端口
[root@syf conf]# docker run  --privileged -d -p 3306:3306 -v /data/dockerData/mysql/conf/my.config:/etc/mysql/my.config -v /data/dockerData/mysql/logs:/logs -v /data/dockerData/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234 --name mysql5.7 c20987f18b13
bc74416fac38678c2e7ea5c61bc3a87215541125c7b3a80368892e4e6efb4f39

3-查看容器
[root@syf conf]# docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED          STATUS          PORTS                                                  NAMES
bc74416fac38   c20987f18b13   "docker-entrypoint.s…"   13 seconds ago   Up 11 seconds   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   mysql5.7

上面运行镜像容器参数详细解释

--privileged  允许挂载数据卷,默认是读写权限rw

-d:以后台方式运行实例,(退出容器mysql依旧运行)

配置端口映射:
-p 3306:3306  指定宿主机器3306 :docker容器3306端口 映射。


mysql数据卷挂载解读:
1.日志文件挂载 :-v /data/dockerData/mysql/logs:/logs ()
将容器中的日志文件夹 /var/log/mysql 挂载到 宿主机对应的 /mydata/mysql 文件夹中。


2.数据文件挂载: -v /data/dockerData/mysql/data:/var/lib/mysql 
将容器中的数据文件夹 /var/lib/mysql 挂载到宿主机对应的 /mydata/mysql/data 文件夹中。


3.mysql 配置文件挂载:-v /data/dockerData/mysql/conf/my.config:/etc/mysql/my.config
将容器的配置文件夹etc/mysql/my.config挂载到宿主机对应的 /data/dockerData/mysql/conf/my.config 文件夹中。

设置数据库root的密码:

MYSQL_ROOT_PASSWORD=数据库密码

设置mysql容器名称:

--name mysql5.7

c20987f18b13   :指定用这个镜像来创建运行实例。

 最后:连接你的mysql (服务器端口 3306要开放文章来源地址https://www.toymoban.com/news/detail-846349.html

2.3 查看mysql,并登入
1-查看容器
[root@iZuf6hxabqikytnrumsi4gZ ~]# docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED          STATUS          PORTS                                                  NAMES
bc74416fac38   c20987f18b13   "docker-entrypoint.s…"   28 minutes ago   Up 28 minutes   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   mysql5.7

2-进入容器
[root@iZuf6hxabqikytnrumsi4gZ ~]# docker exec -it  bc74416fac38 /bin/bash

3-登录mysql
root@bc74416fac38:/# mysql -u root -p
Enter password:1234
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.36 MySQL Community Server (GPL)

Copyright (c) 2000, 2021, 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.

4-查看数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> 


最后一定要放开防火墙端口

  1. 输入指令:firewall-cmd --zone=public --add-port=3306/tcp --permanent,开放防火墙指定端口。
  2. 输入指令:firewall-cmd --reload,重新加载防火墙。

 mysql容器开机启动

开机启动
docker update --restart=always 容器ID

取消
docker update --restart=no 容器ID

到了这里,关于docker 安装 mysql5.7(全网最详细)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker 安装 MySQL5.7 和 MySQL8

    拉下来镜像后 执行 docker images 此时我们已经有这个镜像了。 在根目录下创建 app , 在 app 目录下创建 mysql57 文件夹。 命令如下: 参数说明 : -d :将容器在后台运行(以分离模式运行)。 -p 3306:3306 :将宿主机的 3306 端口映射到容器的 3306 端口,这样可以通过宿主机的 3306

    2024年02月04日
    浏览(40)
  • Docker安装最新版MySQL5.7(mysql-5.7.40)教程(参考Docker Hub)

       MySQL官方安装包下载地址:   https://dev.mysql.com/downloads/mysql/      Docker Hub官方网址:   https://hub.docker.com/     【MySQL系列安装部署教程】 写最好的Docker安装最新版MySQL8(mysql-8.0.31)教程(参考Docker Hub和MySQL官方文档)   最新MySQL-5.7.40在云服务器Centos7.9安装部署

    2023年04月23日
    浏览(40)
  • 【Mac开发环境搭建】安装HomeBrew、HomeBrew安装Docker、Docker安装Mysql5.7和8

    科大源安装 卸载 安装包 卸载包 查询可用的包 更新所有包 更新指定包 查看已经安装的包 查看包的信息 清理包 查看brew的版本 更新brew 获取brew的帮助信息 安装完成之后,双击Docker图标即可运行Docker Docker启动之后,就可以使用Docker相关命令 镜像相关 查看已经拉取的所有镜像

    2024年02月04日
    浏览(32)
  • 使用Docker容器部署java运行环境(java8 + mysql5.7 + redis5.0 + nginx1.14.1

    环境:阿里云ECS服务器 1.1 安装工具 1.2 为yum源添加docker仓库位置 1.3 将软件包信息提前在本地索引缓存 (非必要,建议执行,可以提升yum安装的速度,报错去掉fast试试) 1.4 安装Docker 傻瓜式安装 点击y 1.5 启动Docker 1.6 设置开机自启动 1.7 安装完成后可以测试一下,是否安装成功

    2024年02月02日
    浏览(65)
  • docker 安装Redis (全网最详细:附带配置文件)

     截止目前,Redis 的最新稳定版本是 6.2.6。这个版本在可读性、性能和稳定性方面进行了改进,并增加了一些新的命令和功能。 一、安装redis 1.1  拉去镜像 执行过程   1.2 创建reids配置文件       新建文件夹  本次使用的配置文件(注意看我注释): 下面是关于配置文件详

    2024年01月21日
    浏览(39)
  • Centos /Linux环境下利用Docker 安装mysql5.7镜像(含离线安装),启动mysql镜像并初始化数据库

    使用有网的服务器下载好镜像 保存下载好的镜像成tar 将镜像上传到所需服务器(放在固定位置) 导入镜像 注意名称,这里的mysql5.7和上面打包 docker save imageid mysql5.7 的名称一致,本例未改名 查看导入的镜像,并重新命名镜像 创建本地数据库目录、配置文件以及日志目录(

    2024年02月10日
    浏览(48)
  • Docker 安装 Nginx 容器 (完整详细版)

    Docker 安装 (完整详细版) Docker 日常命令大全(完整详细版) 说明: Docker如果想安装软件 , 必须先到 Docker 镜像仓库下载镜像。 Docker官方镜像  1、寻找Nginx镜像   2、下载Nginx镜像 命令 描述 docker pull nginx 下载最新版Nginx镜像 (其实此命令就等同于 : docker pull nginx:latest ) docker pu

    2024年02月03日
    浏览(29)
  • Docker安装Nginx并部署&MySQL容器构建

    将配置文件上传到conf文件夹(数据库配置文件已放到置顶资源中) /soft/mysql/conf/my.cnf:/etc/my.cnf目录为我们配置绑定的目录 /soft/mysql/data:/var/lib/mysql 是将data目录与MySQL目录进行绑定 进入到我们的MySQL容器中(m1为容器名)  进入容器后登录到MySQL 输入密码后进入到MySQL赋予权限 

    2024年01月19日
    浏览(38)
  • Docker运行MySQL5.7

    步骤如下: 1.获取镜像: 2.创建挂载目录: 3.先启动docker把配置文件拷贝出来: 这里需要另外起一个终端,来拷贝文件: 4.启动docker 参数说明: (1)-d:后台启动 (2)-p:端口映射 (3)-v:目录挂载,一共挂载了日志、数据文件、配置三种文件。 (4)--name:容器名字 (

    2024年02月15日
    浏览(32)
  • Docker安装mysql&&使用Navicat远程连接mysql容器&&mysql容器的持久化测试

    文章主人公:帅哥BUG😎  文章路人: 路人 🤨  路人 😛 目录 一.安装mysql并配置文件 1.下载相关镜像 2.在宿主机中创建相关目录,用于挂载容器的相关数据 3.conf目录 4.data目录(创建mysql5.7容器) 二.使用Navicat远程连接mysql容器 1.ip addr 获取ip 2.点击连接选择MySql 3.输入ip,密码

    2024年02月03日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包