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数据库的更多相关文章

  1. windows下docker 启动jenkins成功,浏览器无法访问,拒绝了我们的连接

    [问题现象] 在Windows下使用docker启动了一个jenkins,翻越了无数的坑,最后的启动命令为 docker run --name jenkins -u root -p 8000:8000 ...

  2. VMware下Linux网络配置局域网和外网访问

    要使用Linux系统很重要的一个操作就是使Linux系统能够访问互联网,只有Linux系统能够访问互联网才能够去下载很多自己所需要的资源,如果不能访问互联网那么使用Linux系统往往会卡在这一步,假设 ...

  3. 将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 ...

  4. MacOS下解决宿主机和docker容器之间网络互通

    docker在Mac下使用非常方便,官网提供了desktop版本的可视化软件,甚至还十分贴心地集成好了k8s套件.然而如果想同时部署和使用多个容器,每个容器不使用127.0.0.1地址,而是各自有ip ...

  5. macOS 下 PHPStorm + Xdebug 调试 Docker 环境中的代码

    0x00 描述 宿主机是 mac mini,构建的项目在 docker 中,所以需要在 PHPStorm 上配置 Xdebug 进行远程代码调试. 0x01 环境 宿主机:macOS High Sie ...

  6. 解决Windows10下无法对docker容器进行端口访问(端口映射的问题)

    解决Windows10下无法对docker容器进行端口访问(端口映射的问题) 问题详情 在Windows10系统服务器中安装了docker和docker-compose 并尝试在其中运行Nginx服务 ...

  7. 在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 ...

  8. WSL2设置局域网网访问

    标签: wsl2  局域网  docker  WSL2设置内网访问 1.先找到虚拟机的ip 2.设置端口转发(需要管理员权限运行powershell) 3.删除端口转发 4.配置入站规则. 1.先找到 ...

  9. Linux下部署docker记录(0)-基础环境安装

    以下是centos系统安装docker的操作记录 1)第一种方法:采用系统自带的docker安装,但是这一般都不是最新版的docker安装epel源[root@docker-server ~]# wg ...

随机推荐

  1. Linux之更改Nginx映射默认根目录

     更改nginx映射默认根目录: 1.打开默认配置文件:sudo  vi /etc/nginx/sites-available/default 2.修改配置:root /var/www/html/xx ...

  2. HDU1233 还是畅通工程【最小生成树】

    题意: 求出连接各个村庄最小的公路总长度,把最小公路总长度求出来. 思路: 最小生成树原理,带入数据求得. 代码: prim: #include<iostream> #include< ...

  3. 转:Delphi中使用比较少的一些语法

    http://www.cnblogs.com/Murphieston/p/5577836.html 本文是为了加强记忆而写,这里写的大多数内容都是在编程的日常工作中使用频率不高的东西,但是又十分重要. ...

  4. 判断网络远端服务器是否断开连接(心跳连接:socket.sendUrgentData)

    1.socket类的方法isClosed().isConnected().isInputStreamShutdown().isOutputStreamShutdown()等,这些方法都是本地端的状态, ...

  5. css scrollbar样式设置

    参考链接:https://segmentfault.com/a/1190000012800450

  6. 不修改加密文件名的勒索软件TeslaCrypt 4.0

    不修改加密文件名的勒索软件TeslaCrypt 4.0 安天安全研究与应急处理中心(Antiy CERT)近期发现勒索软件TeslaCrypt的最新变种TeslaCrypt 4.0,它具有多种特性,例 ...

  7. SpringBoot几个重要的事件回调、监听机制

    (1).需要配置在META-INF/Spring.factories 1.ApplicationContextInitializer // // Source code recreated from ...

  8. ReLu、LeakyRelu、PReLu(转载)

    转载链接:http://blog.csdn.net/cham_3/article/details/56049205

  9. memset()函数

    memset需要的头文件 <memory.h> or <string.h> memset <wchar.h> wmemset  函数介绍 void *memset( ...

  10. Jenkins与网站代码上线解决方案【转】

    转自 Jenkins与网站代码上线解决方案 - 惨绿少年 https://www.nmtui.com/clsn/lx524.html 1.1 前言 Jenkins是一个用Java编写的开源的持续集成工 ...