docker上面安装mysql

news2024/10/4 21:17:52

一、docker安装mysql

新建配置 /data/mysql3306/conf/my.cnf(新建logs,data,conf/my.cnf 后面要用)

 详情:

[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

 执行启动和挂载mysql (需要修改密码,整体复制)

docker run  --privileged -d -p 3306:3306 -v /data/dockerData/mysql3306/conf/my.cnf:/etc/mysql/my.cnf -v /data/dockerData/mysql3306/logs:/logs -v /data/dockerData/mysql3306/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=数据库密码 --name mysql3306 mysql:5.7

详情(上述具体含义):

--privileged 使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限。privileged启动的容器,可以看到很多host上的设备,并且可以执行mount。甚至允许你在docker容器中启动docker容器。

-d:以后台方式运行实例。

配置端口映射:
-p 3306:3306
将容器的3306端口映射到主机的3306端口。


配置mysql数据卷挂载
1.-v /data/dockerData/mysql3306/logs:/logs(日志文件挂载)
将容器中的日志文件夹/var/log/mysql挂载到主机对应的/mydata/mysql文件夹中。
2.-v /data/dockerData/mysql3306/data:/var/lib/mysql(数据文件挂载)
将容器中的数据文件夹/var/lib/mysql挂载到主机对应的/mydata/mysql/data文件夹中。
3.-v /data/dockerData/mysql3306/conf/my.cnf:/etc/mysql/my.cnf(配置文件挂载)
将容器的配置文件夹/etc/mysql挂载到主机对应的/mydata/mysql/conf文件夹中。
注(这里所提的主机指的是当前的linux主机)。

MYSQL_ROOT_PASSWORD=数据库密码

设置数据库root的密码。

--name mysql3306

设置mysql容器名称。


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

执行到这里就可以用连接工具 mysql Workbentch 连接

常用docker命令学习

###常用docker命令学习
#0. 查看docker 版本
docker version

#1. 拉取镜像 (后面5.7是指定版本,默认是latest最新)
docker pull mysql:5.7

#1. 查看运行的容器 (检查容器是否正在运行)
docker ps

#1. 查看运行的容器 (检查容器是否正在运行)
docker ps

#1. 查看运行的容器 (检查容器是否正在运行)
docker ps

#2. 查看所有容器(包括未运行的)
docker ps -a 

#3. 刪除容器 (前三位的容器id就行,全部输也行)
docker rm 19c

#4. 停止运行容器
docker stop 39c

#5. 启动容器
docker start 39c

#执行. 重启容器 (也可以用容器的名称代替)
docker start 39c

#5. 重启容器 (也可以用容器的名称代替)
docker start 39c

#5. 重启容器 (也可以用容器的名称代替)
docker start 39c

#5. 查看容器日志 (执行了启动容器,但是通过docker ps发现没启动成功,可以通过此命令查看具体日志)
docker start 39c

# 查看Mysql容器的数据目录
docker inspect mysql | grep -i datadir

#进入容器内部
docker exec -it [容器id/容器名称] /bin/bash

#进入之后通过命令查看是否可以访问成功
curl http://localhost:容器端口号


# systemctl start docker   //启动docker

# systemctl restart docker  //重启docker

# systemctl enable docker  //设置开启自启

# docker version  //查看docker版本

# docker info  //查看docker详细信息

# docker --help  //查看帮助手册(docker各命令的详细用法)

# docker images -a  // 查看docker现有的镜像

# docker rmi (IMAGE ID)  //删除运行镜像文件(-f:可强制删除)

# docker search xxxx -s  30  //查找docker hub上点赞超过30的镜像信息

# docker pull xxxx  //默认下载最新的镜像信息 

# docker run -it xxxx  //运行docker镜像

  -i:以交互式运行容器

  -t:为容器重新分配一个伪输入终端

  -d:以后台进程方式启动(但容器必须有前台进程与之响应,不然后台进程以为无事可干,自动kill掉;给加一个前台交互脚本:docker run -d centos /bin/sh -c ''while true;do echo hello mycentos;sleep 5;done" --name mycentos)

  --name :给运行容器命名

  -P:随机端口映射

  -p:指定端口映射(1.ip:hostPort:containerPort. 2.ip::containerPort. 3.hostPort:containerPort 4.containerPort)例子:docker run -d -p 5050:8080 tomcat

# docker ps -a  //查看所有的docker进程

# docker ps -n 5   //查看最近运行的5个docker进程

# docker stop (CONTAINER ID )  //停止运行容器

# docker start (CONTAINER ID )  //启动容器

# Ctrl+q+p  //暂时退出容器

# docker rm (CONTAINER ID )  //删除运行的容器

# docker logs -t  (CONTAINER ID )  //查看运行容器的日志

  -t:加入时间戳

  -f:跟随最新的日志打印

  --tail 5:打印最后的五行日志

# docker inspect (CONTAINER ID )  //查看容器的内部细节

# docker exec -it(CONTAINER ID )ls -l /home  //在docker外部运行容器(查看centos容器内home目录下的信息)

#docker exec -it(CONTAINER ID )/bin/bash  //重新加入交互界面

# docker attach(CONTAINER ID )  //重新加入交互界面

# docker cp (CONTAINER ID ):/home/a.log /root  //将容器内的a.log文件拷贝到外部root目录下

 

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

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

相关文章

Spring事务(3)-TransactionInterceptor实际事务执行

Spring事务(2)-EnableTransactionManagement实现源码解析 中介绍了Spring事务开启和代理的实现,现在了解实际事务执行TransactionInterceptor。 TransactionInterceptor TransactionInterceptor类图 MethodInterceptor:AOP代理后…

vue 高德地图设置鼠标样式

高德地图JS API 2.0 设置鼠标样式在线示例 首先&#xff0c;在 index.html 中引入图标&#xff1a; <link rel"stylesheet" href"https://at.alicdn.com/t/font_873139_0v65kqy674.css" >封装工具文件 utils/map.js &#xff1a; export default …

itop-3568开发板驱动学习笔记(9)高级字符设备(三)信号驱动 IO

《【北京迅为】itop-3568开发板驱动开发指南.pdf》 学习笔记 文章目录应用层信号机制应用层开启异步通知驱动层异步通知接口实验代码信号驱动 IO 不需要像 poll 一样查询设备的状态&#xff0c;一旦设备有目标事件发生&#xff0c;就会触发 SIGIO 信号&#xff0c;然后处理信号…

网卡的 Ring Buffer 详解

1. 网卡处理数据包流程 网卡处理网络数据流程图&#xff1a; 图片来自参考链接1 上图中虚线步骤的解释&#xff1a; 1 DMA 将 NIC 接收的数据包逐个写入 sk_buff &#xff0c;一个数据包可能占用多个 sk_buff , sk_buff 读写顺序遵循FIFO&#xff08;先入先出&#xff09;原…

Redis(四)事务 multi、exec

哈喽&#xff0c;大家好&#xff0c;我是有勇气的牛排&#xff08;全网同名&#xff09;&#x1f42e;&#x1f42e;&#x1f42e; 有问题的小伙伴欢迎在文末评论&#xff0c;点赞、收藏是对我最大的支持&#xff01;&#xff01;&#xff01;。 文章目录1 前言1.1 什么是Redi…

从零开始的Web渗透:信息收集步骤详解

一、域名信息收集 1.获取域名的whois信息是、 什么是Whois Whois是一种传输协议&#xff0c;用于查询域名注册所有者等信息。它可以帮助您查询域名是否已被注册&#xff0c;以及获取有关已注册域名的详细信息&#xff0c;例如域名注册商和域名所有人。 早期的Whois查询通常…

Docker 部署Jira8.1.0

Jira与Confluence一样&#xff0c;都需要用到独立的数据库&#xff0c;对于数据库的安装我们不做介绍&#xff0c;主要介绍如何用Docker部署Jira以及对Jira进行破解的操作。 1、数据库准备 关于数据库官方文档说明&#xff1a;https://confluence.atlassian.com/adminjiraserv…

【Spring6】| Spring对事务的支持

目录 一&#xff1a;Spring对事务的支持 1. 事务概述 2. 引入事务场景 3. Spring对事务的支持 3.1 Spring实现事务的两种方式 3.2 Spring事务管理API 3.3 声明式事务之注解实现方式 3.4 事务属性 3.5 事务传播行为propagation 3.6 事务的隔离级别isolation 3.7 事务…

【Android安全】Soot 静态分析教程

参考教程 https://github.com/noidsirius/SootTutorial Windows Soot 环境配置 下载代码 git 拷贝仓库 git init git clone https://github.com/noidsirius/SootTutorial.git ./gradlew.bat build 报错&#xff1a;Unsupported class file major version 57 ./gradlew.b…

JDK定时/延迟任务实现原理

刚刚好点进去看了,做个笔记 先读 这样子的延迟任务代码很常见,在保持心跳、延迟确认等等场景 从源码的角度看他是怎么实现的 Testpublic void delayTest() throws InterruptedException {Executors.newScheduledThreadPool(1).schedule(() -> {System.out.println("一…

Baumer工业相机堡盟工业相机如何联合BGAPISDK和OpenCVSharp实现图像的拉普拉斯算法增强(C#)

Baumer工业相机堡盟工业相机如何联合BGAPISDK和OpenCVSharp实现图像的拉普拉斯算法增强&#xff08;C#&#xff09;Baumer工业相机Baumer工业相机使用图像算法增加图像的技术背景Baumer工业相机通过BGAPI SDK联合OpenCV使用图像增强算法1.引用合适的类文件2.BGAPI SDK在图像回调…

数学与应用数学有哪些SCI期刊推荐? - 易智编译EaseEditing

以下是数学与应用数学领域的几个知名SCI期刊&#xff1a; Annals of Mathematics&#xff1a; 成立于1884年&#xff0c;是数学领域最古老和最著名的期刊之一&#xff0c;由普林斯顿大学出版。 该期刊发表了许多重要的数学成果&#xff0c;如Gdel不完全定理、费马大定理证明…

景点VR全景虚拟体验系统定制

为深度挖掘行业特色&#xff0c;利用5G、VR&#xff0c;AI&#xff0c;AR等数字化技术&#xff0c;为行业领域量身打造数字化解决方案已成趋势 VR内容定制可包括: VR旅游、VR展馆、VR教育、VR汽车、VR电商、VR地产等等。我们是国内较早从事沉浸式VR内容开发的企业&#xff0c;在…

Python将Excel文件内容写入Word文件

在日常办公中我们经常需要将Excel文件中的数据写入Word中&#xff0c;如果是手动一个一个进行复制粘贴&#xff0c;那将会非常的耗时且繁琐&#xff01; 遇到这种问题我们首先想到就是利用b编程解决&#xff0c;今天我分享一个excel转word的小方法&#xff01; 首先我有一个E…

儿童乙肝的预防和治疗,看这一篇就够了

儿童乙肝治疗应早期进行从1967年发现乙型肝炎&#xff08;以下简称乙型肝炎&#xff09;病毒&#xff0c;1969年开发乙型肝炎疫苗&#xff0c;到乙型肝炎治疗药物不断出现&#xff0c;乙型肝炎的防治取得了显著成效。目前&#xff0c;乙型肝炎的预防已经取得了积极的效果。儿童…

配置FTP/TFTP协议的ASPF

在多通道协议和NAT的应用中&#xff0c;ASPF是重要的辅助功能。通过配置ASPF功能&#xff0c;实现内网正常对外提供FTP和TFTP服务&#xff0c;同时还可避免内网用户在访问外网Web服务器时下载危险控件。 组网需求 如图1所示&#xff0c;FW部署在某公司的出口&#xff0c;公司提…

Jenkins Harbor

Harbor 环境搭建 https://github.com/goharbor/harbor/releases/tag/v2.5.6 点击下载地址安装包 安装 解压安装包 [rootlocalhost ~]# tar -zxvf harbor-offline-installer-v2.5.6.tgz -C /usr/local/修改harbor.yml配置 [rootlocalhost harbor]# cp harbor.yml.tmpl ha…

VMware vSphere中三种磁盘模式:精简置备/厚置备置零/厚置备延迟置零

在VMware vSphere中&#xff0c;不管是以前的5.1版本&#xff0c;或者是现在的6.5版本&#xff0c;创建虚拟机时&#xff0c;在创建磁盘时&#xff0c;都会让选择磁盘的置备类型&#xff0c;如下图所示&#xff0c;分为&#xff1a; Thick ProvisionedLazy Zeroed(厚置备延迟置…

从0开始使用flask搭建WEB前端可视化界面

目录1.download一个模板2.配置flask python文件3.移动模板中文件的相对位置4.修改html中的原路径5.运行与调试1.download一个模板 模板 将其中的html结尾的文件放入template文件夹&#xff0c;其余的放入static文件夹&#xff0c;再创建一个python文件使用flask&#xff0c;…

亚马逊云科技从成本规划,开启云财务管理之旅

亚马逊云科技的云财务管理旨在帮助企业建立一个成功的CFM战略&#xff1a;通过4个云财务管理CFM原则或步骤作为路线图&#xff1a;SEE-查看、SAVE-保存、PLAN-计划和RUN-运行。 对现有工作负载的预测和规划 1、 优化计算资源与架构&#xff1a;与技术业务相关部门合作&#xff…