macOS下通过docker在局域网成功访问mysql5.6数据库

摘要:
连接成功后,如下图所示,您已经进入docker mysql映像。6.查看mysql的启动状态。如上图所示,mysql尚未启动servicemysqlstatus7。如果mysql还没有启动,可以使用下面的命令启动它,如下图所示,servicemysqlstart8。输入mysql验证mysql是否已经成功启动,以及docker中的mysql已经成功启动。

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

macOS下通过docker在局域网成功访问mysql5.6数据库第1张

从图中可以看到mysql镜像的3306端口绑定了本地的32769端口,因此就说如果你要在局域网中访问docker中的mysql数据库就需要使用服务器IP:32769来进行访问。

5.连接到mysql镜像中

docker exec -it relaxed_hodgkin bash

dockerexec是docker镜像的连接命令,类似于ssh一样的命令,relaxed_hodgkin是镜像的名字,镜像每次启动都必须有一个名字,该名字可以手动指定也可以自己生成。

连接成功以后,如下图,已经进入到了docker mysql镜像中

macOS下通过docker在局域网成功访问mysql5.6数据库第2张

6.查看mysql的启动状态,如上图就显示mysql没启动

service mysql status

7.mysql没有启动可以使用以下命令启动,如图所示启动成功

service mysql start

macOS下通过docker在局域网成功访问mysql5.6数据库第3张

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

macOS下通过docker在局域网成功访问mysql5.6数据库第4张

到此为止,docker中的mysql已经启动成功。

9.如何在外部使用root连接这个mysql? 为了安全,首先需要设置root帐号的密码,如下

update user set authentication_string = password('root') where user = 'root';

这时会报以下错误

macOS下通过docker在局域网成功访问mysql5.6数据库第5张

是因为没有选择数据库,要在上面的命令之前执行下面这句,就可以将root的密码改为root

use mysql;

10.由于mysql中root执行绑定在了localhost,因此需要对root进行授权

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

11.最后,使用SQLyog测试mysql连接,如下

macOS下通过docker在局域网成功访问mysql5.6数据库第6张

连接成功,说明docker中的mysql可以在局域网中使用。

免责声明:文章转载自《macOS下通过docker在局域网成功访问mysql5.6数据库》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇MongoDB超级简明入门教程四、 MySQL客户端工具及SQL讲解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mysql error 3065,解决

最近自己做了个小项目,把项目往linux迁移的时候出现了个小问题,登陆之后的列表页面不显示,刚开始以为是代码问题,代码改了一遍又一遍,后来在liunx的mysql测试sql的时候有一条sql报错了,但是我在本地测试是没问题的,看了下mysql报的是error 3065,原来是linux的mysql和我本地的mysql版本不一样。。按照网上的方法成功解决:...

构建Oracle的Docker镜像

说明:本次构建环境,Centos7.7,Oracle12.2.0.1,Docker19 注意:已安装好docker的,请检查docker版本,1.13以下版本要升级; # df -h 命令检查根目录的空间是否足够,保证剩余空间30GB以上 1.下载到Oracle官网下载Oracle安装包 linuxx64_12201_database.zip,需要注册账号...

Centos6安装MySQL5.7(yum方式)

1. 下载并安装用来配置mysql的yum源的rpm包 # 下载 wget http://repo.mysql.com/mysql57-community-release-el6-10.noarch.rpm # 安装 yum -y localinstall mysql57-community-release-el6-10.noarch.rpm #...

docker 使用swarm overlay网络时,报“network xx not manually attachable”错误解决

当使用swarm的overlay网络,在该网络中运行容器时报“network xx not manually attachable”的错误 docker network create -d overlay --attachable my-attachable-overlay 默认情况下使用docker network create -d overlay N...

python3+Scrapy爬虫使用pipeline数据保存到文本和数据库,数据少或者数据重复问题

爬取的数据结果是没有错的,但是在保存数据的时候出错了,出现重复数据或者数据少问题。那为什么会造成这种结果呢? 其原因是由于Spider的速率比较快,而scapy操作数据库操作比较慢,导致pipeline中的方法调用较慢,这样当一个变量正在处理的时候,一个新的变量过来,之前的变量的值就会被覆盖。 就比如pipline的速率是1TPS,而spider的速率是5...

阿里云服务器ECS(CentOS)部署项目最详细流程(安装tomcat、部署项目、取消访问时自带项目名、购买域名、备案、域名访问项目)(图文介绍)

自己操作的时候出了很多问题,查了挺多资料最后解决了,记录一下 1、首先去docker hub上搜索tomcat https://hub.docker.com/_/tomcat 2、找一个自己喜欢的版本,或者直接下载默认版本 docker pull tomcat 如果没有配置过镜像加速 针对Docker客户端版本大于 1.10.0的用户 您可以通过修改d...