macOS下通过docker在局域网成功访问mysql5.6数据库
1.获取mysql镜像
docker pull mysql:5.6
注意:此处之所以获取mysql5.6是因为mysql5.7在centos7中启动可能会报错,
2.查看镜像列表
docker images
3.启动mysql镜像
docker run -itd -P mysql:5.6 bash
其中 docker run是启动容器的命令;i是交互式操作,t是一个终端,d指的是在后台运行,
-P指在本地生成一个随机端口,用来映射mysql的3306端口,mysql指运行mysql镜像,bash指创建一个交互式shell。
4.查看已经运行的docker镜像
docker ps -a

从图中可以看到mysql镜像的3306端口绑定了本地的32769端口,因此就说如果你要在局域网中访问docker中的mysql数据库就需要使用服务器IP:32769来进行访问。
5.连接到mysql镜像中
docker exec -it relaxed_hodgkin bash
docker exec 是docker镜像的连接命令,类似于ssh一样的命令,relaxed_hodgkin是镜像的名字,镜像每次启动都必须有一个名字,该名字可以手动指定也可以自己生成。
连接成功以后,如下图,已经进入到了docker mysql镜像中

6.查看mysql的启动状态,如上图就显示mysql没启动
service mysql status
7.mysql没有启动可以使用以下命令启动,如图所示启动成功
service mysql start

8.输入mysql 验证mysql是否启动成功

到此为止,docker中的mysql已经启动成功。
9.如何在外部使用root连接这个mysql? 为了安全,首先需要设置root帐号的密码,如下
update user set authentication_string = password('root') where user = 'root';
这时会报以下错误

是因为没有选择数据库,要在上面的命令之前执行下面这句,就可以将root的密码改为root。
use mysql;
10.由于mysql中root执行绑定在了localhost,因此需要对root进行授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
11.最后,使用SQLyog测试mysql连接,如下

连接成功,说明docker中的mysql可以在局域网中使用。
macOS下通过docker在局域网成功访问mysql5.6数据库的更多相关文章
- windows下docker 启动jenkins成功,浏览器无法访问,拒绝了我们的连接
[问题现象] 在Windows下使用docker启动了一个jenkins,翻越了无数的坑,最后的启动命令为 docker run --name jenkins -u root -p 8000:8000 ...
- VMware下Linux网络配置局域网和外网访问
要使用Linux系统很重要的一个操作就是使Linux系统能够访问互联网,只有Linux系统能够访问互联网才能够去下载很多自己所需要的资源,如果不能访问互联网那么使用Linux系统往往会卡在这一步,假设 ...
- 将vue项目部署在Linux的Nginx下,并设置为局域网内访问
1. 下载 wget http://nginx.org/download/nginx-1.12.2.tar.gz 2. 解压缩 tar -zxvf linux-nginx-1.12.2.tar.gz ...
- MacOS下解决宿主机和docker容器之间网络互通
docker在Mac下使用非常方便,官网提供了desktop版本的可视化软件,甚至还十分贴心地集成好了k8s套件.然而如果想同时部署和使用多个容器,每个容器不使用127.0.0.1地址,而是各自有ip ...
- macOS 下 PHPStorm + Xdebug 调试 Docker 环境中的代码
0x00 描述 宿主机是 mac mini,构建的项目在 docker 中,所以需要在 PHPStorm 上配置 Xdebug 进行远程代码调试. 0x01 环境 宿主机:macOS High Sie ...
- 解决Windows10下无法对docker容器进行端口访问(端口映射的问题)
解决Windows10下无法对docker容器进行端口访问(端口映射的问题) 问题详情 在Windows10系统服务器中安装了docker和docker-compose 并尝试在其中运行Nginx服务 ...
- 在Ubuntu 12.04 LTS下成功访问Windows域共享(mount //192.168.1.102/share -o user=DOMIAN\\user,pass=passwd /mnt)
Ubuntu 12.04 LTS下成功访问Windows域共享: 1,在命令行模式下 mount //192.168.1.102/share -o user=DOMIAN\\user,pass=pas ...
- WSL2设置局域网网访问
标签: wsl2 局域网 docker WSL2设置内网访问 1.先找到虚拟机的ip 2.设置端口转发(需要管理员权限运行powershell) 3.删除端口转发 4.配置入站规则. 1.先找到 ...
- Linux下部署docker记录(0)-基础环境安装
以下是centos系统安装docker的操作记录 1)第一种方法:采用系统自带的docker安装,但是这一般都不是最新版的docker安装epel源[root@docker-server ~]# wg ...
随机推荐
- JavaScript之打印页面局部区域
/** * [print part area of html page] * @Author JohnnyZen * @DateTime 2017-10-23 * @copyright [johnny ...
- JavaScript之正方教务系统自动化教评[插件-转载]
[声明]本插件系学院学长原创,非博主所创,发布此处,仅供学习和效仿. /** * @name:正方教务系统自动化教评-插件 * * @author:chenzhongshu * @date:2017- ...
- mysql timestamp时区有影响
timestamp格式 如果数据库修改时区,可能会对数据影响,datetime不依赖数据库时区
- java字符串集合
一,java的接口跟C语言所能做到的相比确实是让人眼前一亮的东西.利用接口可以将多种东西放到一起,在编程过程中就能省略掉相同类的很多重复代码,将代码进行分类别的,统一的处理. 二,java中的字符串处 ...
- 转载 int和string 类型的互换
https://blog.csdn.net/u012421436/article/details/51386690 不论是在什么语言下编程(除C,因为C是没有string类型的),int与string ...
- 【逆向工具】IDA使用5-( string、图形化与视图的切换、图形化显示反汇编地址、自动注释、标签使用)
分析petya病毒时新学会的技巧. IDA技巧1 : string 提取文件中的字符串内容,如果看到一些文件字符串可以定位到关键的函数中. view -> open subview -> ...
- Linux 内核里的“智能指针”【转】
转自:http://blog.jobbole.com/88279/ 众所周知,C/C++语言本身并不支持垃圾回收机制,虽然语言本身具有极高的灵活性,但是当遇到大型的项目时,繁琐的内存管理往往让人痛苦异 ...
- dubbo系列六、SPI扩展Filter隐式传参
一.实现Filter接口 1.消费者过滤器:ConsumerTraceFilter.java package com.dubbo.demo.Filter; import com.alibaba.dub ...
- oracle 回退表空间清理
1.查看已有表空间,找到回退表空间 SELECT * FROM DBA_TABLESPACES WHERE CONTENTS='UNDO' 2.创建新的回退表空间 create undo tables ...
- 安装installshield问题
install designer中 general information 选择setup languages shortcuts编辑 开始 中显示目录 文件路径 C:\Program Files ...