Docker安装并运行mysql5.6数据库
1、在/home目录下新建mysql目录
mysql目录中新建三个目录:conf目录、logs目录、data目录,建这些目录的目的是用来挂载docker中的mysql下的目录的。
结果如下:

1.1、然后在conf中写一个mysql的配置文件my.cnf,里面就是配置一些端口号啊、用什么模式啊,内存开多大啊什么的
配置内容如下:这是我在网上复制过来的,配置内容限制了一些东西,也没使用innodb引擎,根据自己需求配置
port= character-set-server=utf8 performance_schema_max_table_instances= table_definition_cache= table_open_cache= innodb=OFF default-storage-engine=MYISAM default-tmp-storage-engine=MYISAM loose-innodb-trx= loose-innodb-locks= loose-innodb-lock-waits= loose-innodb-cmp= loose-innodb-cmp-per-index= loose-innodb-cmp-per-index-reset= loose-innodb-cmp-reset= loose-innodb-cmpmem= loose-innodb-cmpmem-reset= loose-innodb-buffer-page= loose-innodb-buffer-page-lru= loose-innodb-buffer-pool-stats= loose-innodb-metrics= loose-innodb-ft-default-stopword= loose-innodb-ft-inserted= loose-innodb-ft-deleted= loose-innodb-ft-being-deleted= loose-innodb-ft-config= loose-innodb-ft-index-cache= loose-innodb-ft-index-table= loose-innodb-sys-tables= loose-innodb-sys-tablestats= loose-innodb-sys-indexes= loose-innodb-sys-columns= loose-innodb-sys-fields= loose-innodb-sys-foreign= loose-innodb-sys-foreign-cols= join_buffer_size = 64M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
2、然后使用docker下载mysql镜像,并运行:
下载mysql5.6版本命令:docker pull mysql:5.6
查看下载好的mysql5.6数据库:

2.1、运行mysql5.6容器:
docker run -p : --name mysql -v /home/mysql/conf/my.cnf:/etc/mysql/cnf.d -v /home/mysql/logs:/etc/mysql/logs -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD= -d mysql:5.6
c85b684385002b1ea64c61fe1ba5801d41a1d18afa03bb0c86495addc6cfb614
命令有点长,说下大概什么意思:
docker run -p : --name mysql 意思就是运行mysql容器,指定本机端口3306映射到docker内部的3306端口,--name为起了个别名叫mysql,不起别名的话以后在docker里操作mysql这个容器就只能用容器id来操作 -v /home/mysql/conf/my.cnf:/etc/mysql/cnf.d 表示将之前新建的/home/mysql/conf目录中的my.cnf配置文件挂载到mysql容器里的配置,其实就是替换掉,让容器使用这个配置 -v /home/mysql/logs:/etc/mysql/logs 意思跟上面一个一样,让容器使用/home/mysql/logs这个目录,不用自己默认的 -v /home/mysql/data:/var/lib/mysql 跟上面意思一样 -e MYSQL_ROOT_PASSWORD= 初始化root用户密码 -d mysql:5.6 表示此容器后台程序运行
查看docker正在运行的容器:docker ps
可以看到mysql运行成功:

如果路径没有打错的话,有可能会遇到这个报错:我就遇到了,直接运行:yum update 命令后,重新运行mysql容器

3、mysql容器运行成功后,进入数据看看:
进入数据库命令:
docker exec -it c85b68438500 /bin/bash 输入数据库账号密码命令:
mysql -uroot -p 进入数据库后,执行sql代码显示当前所有数据库:注意要加;号按回车
show databases;

=====================新加一个修改root密码步骤:
linux进入数据库,使用以下两条命令修改root密码:
、使用mysql
use mysql; 、修改root密码为654321
update user set password=passworD("") where user = 'root'; 、刷新缓存
flush privileges; 4、退出mysql
exit 然后重进mysql,用修改后的密码登录就ok啦

==============数据库安装成功之后,连接数据库=========================
如果用的是本机虚拟机,用数据库操作工具连接不上的话,直接关闭虚拟机的防火墙就行了
我用的是阿里云服务器,外网是直接连不上去的,要去配置一下安全组开放3306端口。
很简单自行百度配置阿里云服务器安全组开放端口
Docker安装并运行mysql5.6数据库的更多相关文章
- 使用docker安装和运行常用的数据库和中间件
mysql: docker pull mysql: docker run --name mysql -p : -v /usr/share/zoneinfo/Asia/Shanghai:/etc/loc ...
- Docker安装以及运行第一个HelloWorld
Docker安装以及运行第一个HelloWorld
- 在一台机子上,安装,运行两mysql数据库实例
为了方便测试,想要用到两个mysql数据库实例.以windows系统为例 当然安装第一个mysql数据库,很简单没什么说的.但是再要安装,运行mysql安装程序时,会提示,修复,卸载,重新安装. 这时 ...
- docker安装消息队列(rabbitmq)及数据库(mongo、mysql)
解决ipv6 访问问题 nohup socat TCP6-LISTEN:36001,reuseaddr,fork TCP4:127.0.0.1:36000 > /root/ip6to4.log ...
- mac下docker安装php链接使用国产数据库驱动
docker下配置php macos系统无法使用神通数据库,所以使用docker来安装php 第一步先安装php docker search php docker pull php:7.1-fpm d ...
- Docker安装+HelloWorld+运行Tomcat
前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 上一篇已经讲解了为什么需要Docker?,相信大家已 ...
- Docker 安装并运行 Redis
说明 在Windows下运行Redis主要有以下几种方式: 使用微软官方构建的Windows版Redis,最新版本是3.0.504,发布于2016-07-01.https://github.com/m ...
- docker安装并运行redis
拉取镜像: [mall@VM_0_7_centos ~]$ sudo docker pull redis:3.2 [sudo] password for mall: 3.2: Pulling from ...
- docker安装并运行kibana
拉镜像: [mall@VM_0_7_centos ~]$ : Pulling from library/kibana 256b176beaff: Already exists 88643bded09c ...
随机推荐
- IDEA激活码
MNQ043JMTU-eyJsaWNlbnNlSWQiOiJNTlEwNDNKTVRVIiwibGljZW5zZWVOYW1lIjoiR1VPIEJJTiIsImFzc2lnbmVlTmFtZSI6I ...
- 用了这么久HTTP, 你是否了解Content-Length?
摘要: 理解HTTP协议... 原文:用了这么久HTTP, 你是否了解Content-Length和Transfer-Encoding ? 作者:朴瑞卿的博客 由Content-Length导致的问题 ...
- 成功安装SQL Server实例后 无法找到SQL Server Configuration Manager工具的解决方案
有一次成功安装SQL Server实例后 ,但是在所有程序中无法找到SQL Server Configuration Manager工具,以下步骤是我们当时的解决方案.最后成功将这个工具的转移到了桌面 ...
- 关于xshell连接limux界面按退格键不正常的问题
这个问题通过修改xshell终端属性可以解决,步骤如下: "文件" -> "属性" -> "终端" -> "键盘 ...
- 渗透测试学习 三十一、MSF
术语 测试者利用系统程序或服务的漏洞进行攻击的一个过程——渗透攻击(exploit),攻击载荷(payload) 攻击者在目标系统上执行的一段代码,该代码具有反弹链接,创建用户.执行其他系统命令的功能 ...
- Java Web 学习(8) —— Spring MVC 之文件上传与下载
Spring MVC 之文件上传与下载 上传文件 表单: <form action="upload" enctype="multipart/form-data&qu ...
- LDAP认证
1.LDAP介绍 LDAP,(Light Directory Access Protocol),基于X.500标准的轻量级目录访问协议,类似于目录服务一样,是一个为查询浏览和搜索的数据库,优势在于他的 ...
- Ant默认配置文件不是build.xml该如何编写命令进行编译打包
Ant的构件文件是基于XML编写的,默认名称为build.xml. ant命令默认寻找build.xml文件.若文件名为hello.xml时,读者还需要对命令做少许改变, 改为:ant –f hell ...
- 不用输入ssh -i命令行即可携带pem文件快速登录的方法
如果要登录的服务器只允许pem认证 每次输入ssh -i xxxx.pem 用户@ip 地址 就很烦 这里有个一劳永逸的方法: 进入到自己的用户目录,例如/home/me 把pem文件放在当前目录 ...
- java图形界面 计算器实现
编写程序实现一个简单计算器的基本功能,具体可以模仿Windows附件中的计算器或模拟常见的实物计算器. package beizi; import java.awt.EventQueue; impor ...