栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

docker 安装mysql5.7

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

docker 安装mysql5.7

docker 安装mysql
获取mysql镜像

这里,以5.7版本为例

sudo docker pull mysql:5.7

查看镜像
sudo docker images

启动mysql
docker run -d -p 3306:3306 -v /usr/local/mysql/conf:/etc/mysql/conf.d -v /usr/local/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysq01 mysql:5.7 

启动成功会生成个容器id

命令解析:

-d 后台运行
-p 端口映射 。-p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务
-v 卷挂载 。 /usr/local/mysql/conf:/etc/mysql/conf.d :将到本地 /usr/local/mysql/conf挂载到容器的 /etc/mysql/my.cnf。后面修改配置文件,只需要再本地 /usr/local/mysql/conf修改即可,不需要进入容器里面进行修改
-e 环境配置。 -e MYSQL_ROOT_PASSWORD=123456 配置数据库连接密码为123456
–name 容器名字

查看启动容器
docker ps -a

如下图:容器列表中存在刚刚启动的mysql01容器。状态为Up 20 minutes代表正在运行中,并且已经运行了20分钟

开启防火墙端口

先查看3306端口有没有开启

#查看防火墙开放端口列表:
firewall-cmd --list-port

如下图,存在3306/tcp。说明3306端口已经开启

如果没有开启,需要手动开启

#永久开放3306端口号:
firewall-cmd --permanent --zone=public --add-port=3306/tcp
#加载防火墙开放端口
firewall-cmd --reload
#重新启动  防火墙
systemctl restart firewalld.service
宿主机用Navicat Premium连接测试

测试卷挂载 查看数据挂载(/usr/local/mysql/data)下数据列表

新建一个数据库

刷新数据挂载(/usr/local/mysql/data)下数据列表

如下图,多了一个testdb。说明挂载成功

设置mysql默认编码格式为utf8(可选)
# cd到本地挂载配置文件目录下
cd /usr/local/mysql/conf
# 新建配置文件
 vim my.conf

输入一下配置信息

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

至此,docker安转mysql,并挂载配置文件和数据到本地虚拟机已完成!

本文参考链接:
1.哔哩哔哩视频:【狂神说Java】Docker最新超详细版教程通俗易懂 第22集 实战:MySql同步数据
2.哔哩哔哩视频:Java项目《谷粒商城》Java架构师 | 微服务 | 大型电商项目P10 环境-docker安装mysql

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/785662.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号