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…

2023.12.31力扣每日一题——一年中的第几天

2023.12.31 题目来源我的题解方法一 模拟 题目来源 力扣每日一题;题序:1154 我的题解 方法一 模拟 如果月份大于2,,需要判断当年是否是闰年,如果是闰年2月份需要多算一天。 具体计算: 先计算月的贡献(注…

微信养号指南:提高账号权重

在如今的社交媒体时代,微信成为了人们生活中必不可少的一部分。它不仅是一个即时通讯工具,更是一个方便快捷的社交平台。然而,要想让自己的微信号保持活跃并吸引更多的关注,需要一些技巧和策略。下面将为大家分享一些微信养号指南…

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

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

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

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

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

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

Java使用camerax的例子

在github,自己看吧 https://github.com/7eau/CameraXDemo_Java camerax版本 def camerax_version "1.1.0-beta01" implementation "androidx.camera:camera-core:${camerax_version}" implementation "androidx.camera:camera-camera2:…

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是一个动…

LeetCode 45

和跳跃游戏I差不多&#xff5e; class Solution { public:int jump(vector<int>& nums) {const int N1e410;int dp[N]{0};for(int i1;i<nums.size();i){dp[i]0x3f3f3f3f;}//init操作for(int i0;i<nums.size();i){for(int j1;j<nums[i];j){if(ij<nums.siz…

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

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

Invalid options in vue.config.js: “plugins“ is not allowed

项目场景&#xff1a; 安装并配置elementPlus报错。 问题描述 "plugins" is not allowed. plugins不被允许。参考官网修改配置文件vue.config.js。 解决方案&#xff1a; const AutoImport require(unplugin-auto-import/webpack) const Components require(un…

阿里云Alibaba Cloud Linux 3镜像版本清单2024更新

Alibaba Cloud Linux阿里云打造的Linux服务器操作系统发行版&#xff0c;Alibaba Cloud Linux完全兼容完全兼容CentOS/RHEL生态和操作方式&#xff0c;目前已经推出Alibaba Cloud Linux 3&#xff0c;阿里云百科aliyunbaike.com分享Alibaba Cloud Linux 3版本特性说明&#xff…

即时通讯技术文集(第30期):IM开发综合技术合集(Part3) [共16篇]

为了更好地分类阅读 52im.net 总计1000多篇精编文章&#xff0c;我将在每周三推送新的一期技术文集&#xff0c;本次是第30 期。 ​[- 1 -] 全面掌握移动端主流图片格式的特点、性能、调优等 [链接] http://www.52im.net/thread-1802-1-1.html [摘要] 本文我们一起全面分析学…

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

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

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

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

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

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

多边形压缩 Douglas-Peucker算法

多边形压缩Douglas-Peucker算法&#xff0c;上代码&#xff01; #include <iostream> #include <cmath> #include <utility> #include <vector> #include <stdexcept> #include <opencv2/opencv.hpp> // 包含OpenCV头文件using namespace…