docker上面安装mysql

这篇具有很好参考价值的文章主要介绍了docker上面安装mysql。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、docker安装mysql

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

docker mysql my.cnf,linux,运维,服务器

 详情:

[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目录下

docker mysql my.cnf,linux,运维,服务器

 docker mysql my.cnf,linux,运维,服务器文章来源地址https://www.toymoban.com/news/detail-767780.html

到了这里,关于docker上面安装mysql的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MySQL:查找my.cnf配置文件的路径

    默认的查找路径 参考 MySQL查看当前使用的配置文件my.cnf的方法

    2024年02月12日
    浏览(47)
  • mysql配置my.cnf中!include和!includedir的作用

    - 先看官网截图: ------------------------------------------------------------------------------------------ 举个例子: [mysqld] port=3306 ... ... ... [mysqladmin] ssl=0 ... ... ... !include /home/mydir/myopt.cnf !includedir /home/mydir/conf.d/ my.cnf内容如上。 文字说明 : my.cnf中的配置,都分有各个模块,例如:[mysqld] [cli

    2024年02月04日
    浏览(42)
  • mysql8.0及以上my.cnf设置lower_case_table_names=1无法启动

    今天装了Mysql,忙活了一下午终于装完了可以远程连接了,想着Mysql的大小写区分太麻烦就在/etc/my.cnf里面加了一句lower_case_table_names=1,结果重启数据的时候就报错了如下: 查了老半天,各种说法都有,给权限啊,添加路径什么的,我以为是我用了一会,改了什么数据文件什么

    2024年02月12日
    浏览(42)
  • 看了mysql8.0官网,发现set sql_mode原来有可以不用修改my.cnf或mysqld-auto.cnf就可以持久化系统变量的方式

    @@GLOBAL.sql_mode: 全局级别的设置,影响所有新的客户端连接。通常需要具有高级权限才能修改,且修改后对尚未建立连接的新会话生效,对当前已存在的会话无效。MySQL服务器重启后,如果没有在配置文件中永久设定,全局设置将恢复到服务器启动时的默认值或配置文件中的设

    2024年04月15日
    浏览(39)
  • docker上面安装mysql

    新建配置 /data/mysql3306/conf/my.cnf(新建logs,data,conf/my.cnf 后面要用)  详情:   执行启动和挂载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 MYS

    2024年02月03日
    浏览(27)
  • 安装的mysql中没有my.ini文件

    使用的这么长时间的mysql,有一天我突然需要使用mysql 的配置文件my.ini时发现没有这个文件并且这个文件不是被隐藏了。 查看自己的mysql中是否有my.ini,也可能是这个文件是隐藏文件你没有设置可以查看隐藏文件 一般情况下mysql都是安装在C:Program FilesMySQLMySQL Server 5.7这个地

    2024年02月05日
    浏览(51)
  • MySQL如何安装配置(含my.ini详细配置-新旧版通杀)

    对应全套文章链接: MySQL如何安装配置(含my.nin详细配置-新旧版通杀) (qq.com) 百度搜索MySQL 进入以下页面,在依次点击download、MySQL Community (GPL) Downloads » 点击 MySQL Community Server 我这里是window,自己选择相应的系统进行下载-选择第一个即可(免安装版) zip Archive:是直接解压缩

    2023年04月08日
    浏览(49)
  • 在linux上面安装xxl-job2.4.0

    由于预算有限,用不起lambda去跑定时任务,现在只能在EC2上面自己安装一个单机版的xxl-job了。 在这个页面下载压缩包,并本地解压。 https://github.com/xuxueli/xxl-job/releases 找到它默认身数据库初始化文件: /xxl-job/doc/db/tables_xxl_job.sql 登录到自己的mysql数据库中: 找到如下文件:

    2024年04月15日
    浏览(35)
  • linux安装docker教程+mysql安装 二、使用docker安装mysql

    第一步、关闭SELINUX服务  修改文件后的重启linux,重启命令为:reboot  注意此处虚拟机里修改重启无法启动linux系统成功,处理方法: 1、重启Linux按e进入系统启动项修改参数 2、在linux16的行位添加 selinux=0 按ctrl + x之后启动linux系统  3、启动之后,修改/etc/selinux/config文件 第二

    2024年02月09日
    浏览(46)
  • WSL2配置Linux、Docker、VS Code、zsh、oh my zsh

    本篇笔记来自于UP主麦兜搞IT的合集视频Windows10开发环境搭建中的部分内容 按照微软官方文档进行操作,当然也可以直接 wsl --install 也可以按照 旧版手动安装的步骤 来进行操作 选择安装的是 Ubuntu 20.04 LTS 注:WSL默认安装在系统盘下,若长期使用务必注意系统盘大小!! 在

    2024年02月22日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包