`

docker 部署mysql

阅读更多

1.获取镜像:

mysql的镜像可以自己用dockerfile制作一个,或者直接到官方的docker镜像库中下载,本文用的是官方镜像。

# docker pull mysql
# docker images
REPOSITORY                                          TAG                IMAGE ID            CREATED            SIZE 
docker.io/mysql                                    latest              d9124e6c552f        12 days ago        383.4 MB

2.运行容器:

创建宿主机数据存放目录:
# mkdir -p /opt/data/mysql
 
启动容器:
# docker run --name docker-mysql -v /opt/data/mysql/:/var/lib/mysql  -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root -d docker.io/mysql
c38f50a540ff4d5ecf1a5ec49fb721335a8e1b79dec58229cf5e00553f988e44

 

3.查看容器:
# docker ps 
CONTAINER ID        IMAGE                    COMMAND                  CREATED            STATUS              PORTS        NAMES
c38f50a540ff        docker.io/mysql          "docker-entrypoint.sh"  9 seconds ago      Up 8 seconds        0.0.0.0:3306->3306/tcp        cmh-mysql         

4.说明

-p 外部端口:容器端口,把容器的mysql端口3306映射到宿主机的3306端口,这样想访问mysql就可以直接访问宿主机的3306端口。

-v /opt/data/mysql:/var/lib/mysql,即把宿主机/opt/data/mysql/目录映射到容器的/var/lib/mysql目录。

注意事项:

1:在使用-v选项映射目录时,宿主机需关闭SElinux:

# setenforce 0

或者给数据目录添加相关selinux权限:

# chcon -Rt svirt_sandbox_file_t /my/own/datadir

2:-v 选项原本是把宿主机的目录映射进容器,但是在本文中,是反过来的。即是把容器中的目录映射出宿主机,这是因为官方镜像在制作的时候使用了VOLUME /var/lib/mysql选项。这使得容器中/var/lib/mysql成为一个单独的卷组,在使用挂载选项-v时,就可以把该目录映射出宿主机。

3.mysql 忽略大小写

   mysql默认官方的镜像  配置文件在  /etc/mysql/mysql.conf.d/mysqld.cnf;修改 这个配置文件 加入 lower_case_table_names=1,然后重启容器;

 

容器中安装vi命令:

 

apt-get update 

apt-get install vim

 或者用shell sed 命令:

sed -i '/lower_case_table_names/d' /etc/mysql/mysql.conf.d/mysqld.cnf

sed -i '/\[mysqld\]/$a lower_case_table_names=1' /etc/mysql/mysql.conf.d/mysqld.cnf

第一条是 删除 lower_case_table_names;

第二条是 添加;

分享到:
评论

相关推荐

    docker部署mysql8教程

    Docker 部署 MySQL 8 是一种流行的方法来部署 MySQL 数据库,使用 Docker 可以轻松地部署和管理 MySQL 数据库。下面是 Docker 部署 MySQL 8 的详细教程。 前置需求 在部署 MySQL 8 之前,需要满足以下前置要求: ...

    docker部署mysql容器自启动并挂载数据卷.pdf

    Docker 部署 MySQL 容器自启动并挂载数据卷 Docker 是一个流行的容器化平台,提供了轻量级、可移植的解决方案来部署应用程序。 MySQL 是一个流行的开源关系数据库管理系统,广泛应用于各种应用程序中。本文将介绍...

    docker部署mysql一主两从集群

    docker部署mysql一主两从集群

    详解使用Docker部署MySQL(数据持久化)

    本文简述如何使用Docker部署mysql,同时持久化数据.我们会用到tutum-docker-mysql 这个项目来搭建一个mysql,省去重头写Dockerfile的时间. 首先我们将tutum-docker-mysql跑起来. docker run -d -p 3306:3306 --name ...

    Docker部署mysql,nginx,tomcatredis

    Docker部署mysql,nginx,tomcatredis

    Docker部署Mysql详细说明文档

    Docker部署Mysql详细说明文档,点赞关注加收藏。

    使用docker部署MySQL环境.pptx

    Docker容器技术

    Docker部署Mysql集群的实现

     mysql 集群方案介绍,建议使用pxc,因为弱一致性会有问题,比如说a节点数据库显示我购买成功,b 节点数据库显示没有成功,这就麻烦了,pxc 方案是在全部节点都写入成功之后才会告诉你成功,是可读可写双向同步的,...

    Docker 部署 Mysql8.0的方法示例

    docker pull mysql 3.在宿主机创建持久化 mysql data 及mysql.cnf  mkdir /usr/local/mysqlData/test/cnf mkdir /usr/local/mysqlData/test/data vi /usr/loal/mysqlData/test/cnf/mysql.cnf  设置本地文件共享:...

    Docker部署mysql数据库.docx

    在docker里面部署mysql数据库步骤和解析

    Docker化MySQL数据库部署指南.docx

    熟练使用Docker部署MySQL数据库。 理解并实现MySQL数据库的数据持久化。 增强MySQL数据库的安全性设置。 无论您是个人开发者、小型团队还是大型企业,此文档将给大家提供数据库部署工作中不可或缺的宝贵资源。

    使用Docker部署MySQL 5.7&8.0主从集群的方法步骤

    具体到Docker部署MySQL主从集群的步骤,可以分为以下几个步骤: 1. 创建Docker网络:使用docker network create命令创建一个overlay类型的网络,以确保不同容器之间的网络互通性。 2. 编辑配置文件:需要准备MySQL...

    CAS5.3.2Docker 部署方案

    CAS5.3.2Docker 部署方案CAS5.3.2Docker 部署方案CAS5.3.2Docker 部署方案

    Docker部署MySql应用.docx

    ——学习参考资料:仅用于个人学习使用! 本代码仅作学习交流,切勿用于商业用途,否则后果自负。若涉及侵权,请联系,会尽快处理! 未进行详尽测试,请自行调试!

    linux本机与docker部署mysql、jdk、Tomact、redis、dubbo、zookeeper、es等

    文本是md,Typora软件编写 写的是如何安装在linux上mysql、jdk、Tomact、redis、dubbo、zookeeper、es, 写的是如何安装在linux的docker上mysql、jdk、Tomact、redis、dubbo、zookeeper、es

    基于Docker的MySQL数据库性能分析.pdf

    文章通过设计了MySQL的性能测试,针对不同大小的数据库和不同的并发访问量,对MySQL和基于Docker的MySQL的性能进行测试,并对结果进行比较分析,验证了将MySQL数据库部署在Docker上的应用价值。 知识点1: Docker...

    docker离线mysql镜像.zip

    docker离线安装mysql镜像文件,并附带docker加载配置流程,服务器在无网络情况下即可轻松部署mysql服务。

    MySQL 使用 SSL 连接配置详解

    本文将详细介绍如何配置MySQL支持SSL连接,以及在Docker环境中进行配置的具体步骤。 首先,你需要确认MySQL是否已经支持SSL。在MySQL客户端中运行以下查询: ```sql mysql> SHOW VARIABLES LIKE 'have_ssl'; ``` ...

Global site tag (gtag.js) - Google Analytics