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环境 包含 ...
随机推荐
- WAMP3.1.3自定义根目录
1.首先找到httpd.conf 文件,搜索documentroot 修改前:DocumentRoot "${INSTALL_DIR}/www" <Directory &qu ...
- python--可迭代对象、迭代器和生成器
迭代器 1.什么是迭代器? 不依赖于索引的取值方式 迭代是一个重复的过程,即每一次重复为一次迭代,并且每次迭代的结果都是下一次迭代的初始值 示例: str1 = 'abcde' count = 0 w ...
- 在Android用vulkan完成蓝绿幕扣像
效果图(1080P处理) 因为摄像头开启自动曝光,画面变动时,亮度变化导致扣像在转动时如上. 源码地址vulkan_extratest 这个demo主要测试二点,一是测试ndk camera集成效果, ...
- Hyperbase常用SQL
1.创建表 1.1 建HBase内表 CREATE TABLE hbase_inner_table( key1 string, bi bigint, dc decimal(10,2), ...
- std::thread线程库详解(4)
目录 目录 前言 条件变量 一些需要注意的地方 总结 前言 本文主要介绍了多线程中的条件变量,条件变量在多线程同步中用的也比较多.我第一次接触到条件变量的时候是在完成一个多线程队列的时候.条件变量用在 ...
- Codeforces Round #345 (Div. 1) A. Watchmen (数学,map)
题意:给你\(n\)个点,求这\(n\)个点中,曼哈顿距离和欧几里得距离相等的点对数. 题解: 不难发现,当两个点的曼哈顿距离等于欧几里得距离的时候它们的横坐标或者纵坐标至少有一个相同,可以在纸上画一 ...
- Network of Schools POJ - 1236 有向强连通图
//题意://给你n个学校,其中每一个学校都和一些其他学校有交流,但是这些边都是单向的.你至少需要给几个学校//传递消息可以使全部学校都收到消息,第二问你最少添加几条边可以使它变成一个强连通图//题解 ...
- 国产网络测试仪MiniSMB - 如何配置VLAN数据流
国产网络测试仪MiniSMB(www.minismb.com)是复刻smartbits的IP网络性能测试工具,是一款专门用于测试智能路由器,网络交换机的性能和稳定性的软硬件相结合的工具.可以通过此以太 ...
- forEachRemaining()方法的用法
forEachRemaining()是java1.8新增的Iterator接口中的默认方法对于这个方法,官方文档是这么描述的:Performs the given action for each re ...
- bash copy multi files
bash copy multi files # copy one file $ cp file1.js /var/www/html # copy multi files ??? no space $ ...