Docker中配置MySQL并实现远程访问
Docker配置MySQL容器
拉取MySQL镜像
docker pull mysql:5.6
有可能会因为网络问题失败,重复尝试。
创建容器
docker run -d --name selfdefinename -p 3306:3306 -e MYSQL_ROOT_PASSWORD=rw mysql:5.6
-d 后台运行,--name 设置名称 selfdefinename 是用户自定义的容器名称,-p 设置端口映射,第一个3306是当前主机的端口,第二个3306指容器中的端口;-e 设置root用户密码为rw;最后的mysql:5.6 可以用imageID代替,代表用于创建容器的镜像。
注:值得注意的是,如果主机已经安装了mysql,那么它会占用3306端口,docker中的mysql将无法正常启动。
解决方式:
1.卸载或暂停主机的mysql服务。
#暂停主机上的mysql
systemctl stop mysqld
2.创建容器时,修改docker容器的端口映射
docker run -d --name selfdefinename -p 10086:3306 -e MYSQL_ROOT_PASSWORD=rw mysql:5.6
10086是容器外部端口号,只要不被占用可以任意指定。3306是容器内部端口,mysql在不更改其配置文件时默认只会监听3306端口。
运行容器
一般创建好容器后容器会自动运行
#运行容器
docker start 容器名或容器ID
允许远程访问
#首先要进入容器内部
docker exec -it 容器名或容器ID
#进入mysql
mysql -u root -p
#授权
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "rw";
flush privileges;
#退出
exit
exit
#第一个exit退出mysql
#第二个exit退出容器的bash
Docker常用命令
新建容器
docker run -d --name 自定义容器名 镜像ID或镜像名
展示当前运行的容器
docker ps
展示所有容器
docker ps -a
展示所有本地镜像
docker images
运行容器
docker start 容器名或容器ID
停止运行容器
docker stop 容器名或容器ID
删除容器
docker rm -f 容器名或容器ID
进入容器内容bash
docker exec -it 容器名或容器ID bash
#退出容器命令:exit
关闭docker服务
systemctl stop docker
Docker中配置MySQL并实现远程访问的更多相关文章
- docker上配置mysql主从复制
1.在docker上启动2台mysql容器:(这里3306为主,3307为从) docker run -d -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 - ...
- docker微服务部署之:四、安装docker、docker中安装mysql和jdk1.8、手动构建镜像、部署项目
docker微服务部署之:三,搭建Zuul微服务项目 1.Centos7安装Docker 详见:Centos7安装Docker 2.Docker中安装jdk1.8 详见:使用Docker构建jdk1. ...
- 0018SpringBoot连接docker中的mysql并使用druid数据源
由于druid数据源自带监控功能,所以引用druid数据源 1.centos7中安装并启动docker 2.docker安装并启动mysql 3.pom.xml中引入druid依赖 4.applica ...
- 使用EF操作Docker中的Mysql实例
为啥我会选择mysql呢?因为我的服务器配置较低,而SqlServer在docker中的实例,服务器的运行内存应当保持在2G+,我没有这个条件,它会爆出这样的错误 sqlservr: This pro ...
- 在my.ini文件中配置mysql统一字符集
测试的mysql版本为:5.7.14 查看mysql字符集命令: show variables like 'character_set_%'; 以下是在my.ini文件中配置mysql统一字符集参数: ...
- linux小白成长之路8————访问Docker中的mysql
[内容指引] 本篇实战演示如何操作Docker中的mysql数据库,包含以下五个知识点: 登录容器: 登录mysql: 运行SQL指令创建数据库: 退出mysql: 退出容器: 1.登录容器 我们在上 ...
- 在docker中安装mysql
#!/bin/sh # 安装docker # 在docker中安装mysql # 解决了docker容器中无法输入中文的问题 ##########################安装docker # ...
- 在docker中使用mysql数据库,在局域网访问
1.获取mysql镜像 docker pull mysql:5.6 注意:此处之所以获取mysql5.6是因为mysql5.7在centos7中启动可能会报错 2.查看镜像列表 docker imag ...
- 如何在VS和CB中配置MySQL环境
这里,由于我的MySQL安装在D盘 MY SQL\MySQL Server 5.6该路径下,所以后面的路径均以D:\MY SQL\MySQL Server 5.6开头 在VS中配置MySQL环境 包含 ...
随机推荐
- SLAM01
上周末发现了一个巨大的问题,就是我们目前构建的室内定位的方法中,一个基本的假设是错的----这就非常尴尬了. 于是乎赶紧抱一波佛脚,学习一下slam里相关的问题是怎么解决的,找找灵感. 结果看了个开头 ...
- HDU6311 Cover【欧拉路径 | 回路】
HDU6311 Cover 题意: 给出\(N\)个点的简单无向图,不一定联通,现在要用最少的路径去覆盖所有边,并且每条边只被覆盖一次,问最少路径覆盖数和各条路径 \(N\le 10^5\) 题解: ...
- 2019HDU多校 Round4
08 K-th Closest Distance 题意:询问区间l,r中与数p的距离为第k大的数 求这个距离 题解:很裸的主席树 二分答案 然后可以用主席数判断在这个区间内 一段值域内出现的数 之前没 ...
- Distinct Substrings SPOJ - DISUBSTR 后缀数组
Given a string, we need to find the total number of its distinct substrings. Input T- number of test ...
- Kubernets二进制安装(16)之安装部署traefik(ingress)
K8S的DNS实现了服务在集群"内"被自动发现,如何使得服务在Kuberneters集群"外"被使用和访问呢,有二种方法 1)使用NodePort型的Servi ...
- Ubuntu Live CD联网修复
此模式下可以联网修复ubuntu系统下绝大多数问题.进入LIVE CD模式,打开终端执行以下命令: #此处/dev/sda1为ubuntu根分区,工作中根据实际分区情况更改 sudo mount /d ...
- haproxy 2.2代理后端https服务
globalmaxconn 100000chroot /usr/local/haproxystats socket /var/lib/haproxy/haproxy.sock mode 600 lev ...
- 1.nginx安装和基本配置
作者 微信:tangy8080 电子邮箱:914661180@qq.com 更新时间:2019-07-10 20:56:10 星期三 欢迎您订阅和分享我的订阅号,订阅号内会不定期分享一些我自己学习过程 ...
- pycharm 与 anaconda 关联
anaconda Anaconda指的是一个开源的Python发行版本,集成了许多数据分析的库. 使用tersorflow进行机器学习时常用Anaconda pycharm PyCharm是一种Pyt ...
- Fetch API & cancel duplicate API & cache API
Fetch API & cancel duplicate API & cache API const usersCache = new Map<string, User>( ...