两个命令安装一个mysql:docker安装mysql5.7

news/2024/11/23 23:50:52/

docker安装mysql5.7

      • 写在前面
      • 安装mysql5.7
      • 修改my.cnf
        • 方法1:.在容器内修改
        • 方法2:直接映射配置文件(自己未测试)
      • 写在最后

写在前面

自从学会docker安装软件之后,发现它确实给我带来了很大的便利,安装一些软件都方便了很多,当然仅限于开发自用,如果是生产环境使用还是要谨慎配置的,废话不多说,转入正题。

安装mysql5.7

我是已5.7版本为例,请选择自己合适的版本下载
下载镜像

docker pull mysql:5.7

首次启动

docker run -d -p 3306:3306 --name mysql -v /mysqldata/mysql/log:/var/log/mysql  -v /mysqldata/mysql/data:/var/lib/mysql  -v /mysqldata/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

一个自己用的mysql就这么安装好了

部分参数说明:
-e MYSQL_ROOT_PASSWORD=root:指定mysql的root密码为root。

docker ps 查看是否安装成功 。
然后就用navcat连接测试下看能不能连上,我这测试时没问题的。

这里值得说一点:我没有配置开启远程连接的权限也能正常访问,然后我查看了一下用户表,发现已经有了一条可以远程访问的root用户,我不知道是不是mysql后面更新了加了一个默认的远程root用户还是docker安装的mysql里才有这个,又或者是docker在安装的时候自动加上的。

修改my.cnf

上面安装完成之后,就能正常使用了, 这里说下如果想修改my.cnf的修改方法吧!

方法1:.在容器内修改

首先是要进入docker容器内

docker exec -it 容器ID /bin/sh

然后使用vi编辑器去编辑

vi /etc/my.cnf

然后你会发现,特么的容器里竟然没有vi命令,还要自己安装命令,
用网上正常的在线安装命令

apt-get install vim

要命的是容器不识别apt-get命令,本来我还想再安装一个apt-get命令,突然间醒悟,不能一条道走到黑,条条大路通罗马。
然后从网上查询到可以再宿主机上编辑好之后再复制到容器中。

首先把文件从容器中复制出来:

docker cp 容器名称:/etc/my.cnf /mysqldata/

编辑好之后再复制回去:

docker cp /mysqldata/my.cnf 容器名称:/etc/

最后重启容器

docker restart mysql

方法2:直接映射配置文件(自己未测试)

找一个相同版本的my.cnf,在首次启动的时候指定参数

-v /mysqldata/mysql/conf/my.cnf:/etc/my.cnf

如果没有的话可以先用上面的命令安装一个mysql,把文件复制出来,然后再删除了重新指定配置文件安装。
后面就可以直接在宿主机上修改文件内容,然后重启mysql就行了。
这里要注意,里面的路径什么的都是已容器内为主,不是宿主机上的路径。

写在最后

如果写的哪里有问题,请多多指正。


http://www.ppmy.cn/news/102515.html

相关文章

5月软考考后,一些常见问题分享

​​2023年上半年5月份的软考考试结束了,希望大家都可以顺利通过考试。 考完的心情如何?是不是都等着拿证了。 考完后大家比较关心的几个问题,我都整理放在下方了,还有其他疑问的也可以在下方留言。 1、2023年上半年软考什么时…

【Python】python3.7默认库安装源地址更改及opencv_python-3.4.2.16环境配置

一、加速下载的部分设置及网址 1、python各版本及国内下载地址 python官方各版本下载地址: https://www.python.org/ftp/python/ 国内华为镜像 https://mirrors.huaweicloud.com/python/ 2、Python 第三方库国内镜像下载地址 python的默认镜像源 默认镜像源…

fatal error: filesystem: 没有那个文件或目录

fatal error: filesystem: 没有那个文件或目录 问题&#xff1a; #include <filesystem>包含上述头文件出错&#xff0c;未找到该文件。 解决方法一&#xff1a; 修改头文件#include <experimental/filesystem>添加依赖 在编译时&#xff0c;后面添加&#xff…

2023年高性能计算实习是IT专业大学生就业黄金选择

你想在IT行业中快速崭露头角吗&#xff1f;你渴望在毕业后能够快速脱颖而出&#xff0c;成为高薪职场中的佼佼者吗&#xff1f;2023年互联网开发求职极致内卷的时代&#xff0c;高性能计算实习就是你的黄金选择&#xff01;作为国内首家专注高性能计算培训的机构&#xff0c;我…

用户需求调研的6大注意事项

1、调研目标要清晰具体 调研目标需明确、清晰、具体&#xff0c;只有这样&#xff0c;才能确保在样本选择和问卷设置时&#xff0c;具有明确的目标性和针对性。 2、调研用户精细化梳理 由于用户间存在个体差异&#xff0c;如果只是随机选取部分用户作为调研样本的话&#xff0c…

Angular学习笔记:environment.ts文件,路由

本文是自己的学习笔记&#xff0c;主要参考资料如下。 - B站《Angular全套实战教程》&#xff0c;达内官方账号制作&#xff0c;https://www.bilibili.com/video/BV1i741157Fj?https://www.bilibili.com/video/BV1R54y1J75g/?p32&vd_sourceab2511a81f5c634b6416d4cc1067…

走近CopyOnWriteArrayList(基于JDK1.8)

走近CopyOnWriteArrayList&#xff08;基于JDK1.8&#xff09; 简介 CopyOnWriteArrayList 是 Java 集合框架中的一种线程安全、并发性能优秀的 List 实现。它采用了一种“写入时复制”的策略&#xff0c;即在对集合元素进行修改时&#xff0c;先将原有数据复制一份出来&…

腾讯云轻量服务器和云服务器区别(超详细全解析)

腾讯云轻量服务器和云服务器有什么区别&#xff1f;为什么轻量应用服务器成本低&#xff1f;是因为轻量服务器CPU内存性能比云服务器CVM性能差吗&#xff1f;轻量应用服务器适合中小企业或个人开发者搭建企业官网、博客论坛、微信小程序或开发测试环境&#xff0c;云服务器CVM适…