Docker 安装Mysql

目录

Docker Mysql安装

✨安装和配置mysql

✨远程连接mysql远程连接

MySQL 是世界上最流行的开源数据库。根据 DB-Engines的调查数据,MySQL 是第二受欢迎的数据库,仅次于 Oracle 数据库。MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用

✨安装和配置mysql
  • 下载镜像mysql server 可选择,有:5.5/5.6/5.7/8.0
 docker pull mysql/mysql-server:8.0

  • docker images查看镜像
docker images

  • 在宿主机中创建相关目录,用于挂载容器的相关数据{comf,data} 注:cd 记得加上/ 目录底下的
mkdir -p /data/mysql/{conf,data}

  • 在conf创建一个配置文件 把配置内容写入
vim my.cnf
--配置内容
[client]
default-character-set=utf8
​
[mysql]
default-character-set=utf8
​
[mysqld]
skip-host-cache
skip-name-resolve
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
secure-file-priv=/var/lib/mysql-files
user=mysql
  • 创建一个容器 映射端口
docker run -p 3307:3306 \--name mysql \-v /data/mysql/conf/my.cnf:/etc/my.cnf \-v /data/mysql/data:/var/lib/mysql \--privileged=true \--restart=always \-e MYSQL_ROOT_PASSWORD=123456 \mysql/mysql-server:5.7  

解析:

-p 3306:3306:宿主机端口:容器端口

--name mysql:容器名字

-v:挂载宿主机的一个目录, 持久化存储的关键所在,将主机目录挂载到容器对应目录,分别是:配置文件、日志文件、数据文件 -v /data/mysql/conf:/etc/mysql/conf.d -v /data/mysql/logs:/logs -v /data/mysql/data:/var/lib/mysq --privileged=true:使用该参数,container内的root拥有真正的root权限, 否则,container内的root只是外部的一个普通用户权限 --restart=always:容器自动启动参数,其值可以为[no,on-failure,always] no为默认值,表示容器退出时,docker不自动重启容器 on-failure表示,若容器的退出状态非0,则docker自动重启容器, 还可以指定重启次数,若超过指定次数未能启动容器则放弃 always表示,只要容器退出,则docker将自动重启容器 -e MYSQL_ROOT_PASSWORD=123456:设置root的密码 -d mysql/mysql-server:5.7:后台启动模式及使用的镜像 - d可加可不加

可能有点小问题 我们的3306被占用

✨修改即可了 我们容器已经创建了一遍 记得删除 docker rm -f mysql

这样就设置成功了

  • 进入容器 登入mysql
docker exec -it mysql bash

密码在做容器挂载 端口映射的时候 已经设置了 我这边是123456

显示mysql 就已经登入成功了

  • 进入之后 实列:运行一个sql脚本

在我们先前创建的 mysql{data}里面创建一个文件夹 用来存放我们宿主机中的数据

我们创建了一个sql文件夹用来存放 数据

把宿主机上的数据直接复制到sql文件夹里

然后我们就可以进行下一步了

  • 创建一个数据库

use 进入数据库 运行source 运行sql文件 

查看表

show tables

这样就做到了一个数据的持久化

✨远程连接mysql

  • 创建一个用户 create 实现用户远程连接 kbin@'%'

create user kbin@'%' identified by '123456';

  • 给用户授权 all 全部权限给shop数据库里的 kbin

grant all on shop.*to kbin@'%'

刷新数据库

FLUSH PRIVILEGES

进行远程连接

如果失败连接 请查看一下 防火墙是否关闭

查看防火墙 状态

systemctl status firewalld

关闭防火墙

systemctl stop firewalld

dead关闭成功

远程连接

输入 创建设置的远程用户

create user kbin@'%' identified by '123456';
  • 然后就可以编辑了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/593044.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis缓存保卫战:拒绝缓存击穿的进攻【redis问题 三】

欢迎来到我的博客,代码的世界里,每一行都是一个故事 Redis缓存保卫战:拒绝缓存击穿的进攻 前言缓存击穿的定义和原理为何会发生缓存击穿缓存击穿的危害防范缓存击穿结语: 前言 你是否曾经遇到过系统在高并发情况下出现严重性能问题&#xff…

云卷云舒:基于业务逻辑关联度实现数据预加载

云卷云舒:算力网络云原生(下):云数据库发展的新篇章-CSDN博客 一、现有技术的技术方案 在实现一个具有复杂业务逻辑的应用系统时,大多数情况下,编码过程中必定会包含着较多的数据访问方法(java…

MES是什么?有了MES还要上ERP或MES吗?

MES是什么 MES是Manufacturing Execution System(制造执行系统)的简称,是一套面向制造企业车间执行层的生产信息化管理系统,负责承接ERP系统下达的生产计划,与ERP关系密切。MES能通过信息传递,做到生产追溯…

亚马逊、速卖通等跨境平台如何利用自养号测评提升销量

一、自然排名:链接成功的关键 自然排名的重要性不言而喻。一个链接的成功与否,关键在于其自然排名是否能够打上来。无论是搜索流量还是关联流量的自然排名,亦或是BSR排行榜,都应时刻关注这些自然排名的变化。 二、自然排名的位置…

Unity 2022 版本 寻路 NavMesh

官方教程地址 https://docs.unity3d.com/Packages/com.unity.ai.navigation1.1/manual/index.html 首先装包 先给地图 和 阻挡 设置为静态 然后给地上行走的地方 添加组件 可以直接bake 然后会显示蓝色的可行走路径 player 添加插件 然后给角色添加脚本 using System.Co…

Keil调试STM32卡死在文件startup_stm32f10x_hd.s的B处

———————Keil调试卡死——————— 🎄问题说明 在移植代码完成后调试时候程序卡死在startup_stm32f10x_hd.s文件的B处 🎄复现场景 🎄解决办法 经过查资料,发现是移植的时候,漏掉了终端函数,加上…

MySQL的安装网络配置

目录 一. MySQL5.7的安装 二. MySQL8.0的安装 三. 配置网络访问 思维导图 一. MySQL5.7的安装 1. 解压 2. 将my.ini文件放入到解压文件中 3. 编辑my.ini文件,将路径改为当前路径 4. 进到bin目录下,以管理员身份打开cmd命令窗口 5. 安装MySQL服务 my…

kbdnecat.DLL文件缺失,软件或游戏无法启动运营,快速修复方法

“kbdnecat.DLL文件是什么?为什么一起动游戏或软件,Windows就报错“kbdnecat.DLL文件缺失,软件无法启动””,应该怎么修复呢? 首先,先来了解“kbdnecat.DLL文件”是什么? kbdnecat.DLL是一个动…

Vue中全局事件总线的配置和原理

实现任意组件之间的通信 任意组件通信的原理: 1、实现任意组件之间的通信,需要一个傀儡。这个傀儡既能被vm访问到,也能被VueComponent访问。 2、VueComponent.prototype.proto Vue.prototype为图上1.0黄色的线路。是Vue让组件实例对象VueComponent可以访问到Vue原…

HCIA-Datacom题库(自己整理分类的)——其他网络协议【完】

(一)单选 下列属于链路状态协议的是? Direct static FTP OSPF 解析: FTP:文件传输协议 OSPF:链路状态路由协议 如下图所示的网络主机A通过Telnet登录到路由器A然后在远程的界面通过FTP获取路由器的配置文件&…

学习调整echarts中toolbox位置toolBox工具栏属性

学习调整echarts中toolbox位置toolBox工具栏属性 toolbox工具栏属性介绍示例代码代码参数说明 toolbox工具栏属性介绍 参考网址:https://echarts.apache.org/zh/option.html#tooltip 属性类型说明toolbox.showbooleanboolean 默认值为true,是否显示工具…

studio3T mongodb 根据查询条件去更新集合

mongodb 等于、不等于$ne、不包含 $nin 以及批量更新数据的使用。 业务场景: 在集合中,根据查询条件,更新数据状态。 实现代码: 1. 部门名称为XXX、状态不等于“完好”的、并且不包含这些编码的数据先查询出来2. 再把状态更新成…

This is probably not a problem with npm.

项目场景: 新创建的vue3项目,根据elementplus官网安装步骤进行按需导入安装,运行项目报错 This is probably not a problem with npm.There is likely additional logging output above. 原因分析: 是elementplus安装版本和自动…

玩转贝启科技BQ3588C开源鸿蒙系统开发板 —— 编译构建及此过程中的踩坑填坑(1)

接前一篇文章:玩转贝启科技BQ3588C开源鸿蒙系统开发板 —— 代码下载(2) 本文主要参考: BQ3588C_代码下载 上一回完成了代码下载,本回开始进行编译构建。 1. 编译构建 (1)执行prebuilts 在源…

JavaScript可选链接

注:本节仍然使用之前的饭店的对象,可以看上几篇文章查看代码 ● 如果我们想要看看饭店周一的开门时间,我们会这么写 console.log(restaurant.openingHours.mon.open);原因是我们在开放时间中并没有定义周一的开放时间,所有会报错…

2024年工作计划与目标怎么写?如何用手机制作工作待办清单

2024年的钟声已经到来,对于上班族来说,制定一份切实可行的工作计划与目标是非常有必要的。但是,很多人不知道2024年工作计划与目标怎么写?其实,关键在于明确目标、细化计划、合理安排时间,以确保每一步都稳…

BIO和NIO编程(待完善)

目录 IO模型 BIO NIO 常见问题 IO模型 Java共支持3种网络编程IO模式:BIO,NIO,AIO BIO 同步阻塞模型,一个客户端连接对应一个处理线程 代码示例: Server端: public class BioServer {private static …

window下载安装Mongodb数据库

我们先要访问他的官网 https://www.mongodb.com/zh-cn 然后顶部导航栏 选择 (Products/产品) 下的 (Community Edition/社区版) 进入界面后 找到 MongoDB Community Server Download 点击下面的按钮 Select package 然后会弹到这个位置 第一个版本 用系统默认选择的就好 第二…

Redis - 挖矿病毒 db0 库 backup 反复出现解决方案

问题描述 腾讯云的服务器,使用 Docker 部署了 Redis 之后,发现 DB0 中总是出现 4 条 key,分别是 backup01backup02backup03backup04 而自己每次存入 db0 中的数据过一会就会被无缘无故删除掉。 原因分析 挖矿病毒 解决方案 在启动的时候…