nas4free 安装mysql_Docker安装MySQL

1deaa993724689a3bfacd4f0accf732b.png

本节将介绍在线使用Docker安装MySQL数据库的步骤。通过本节的实操,您可以掌握从Docker环境的使用,MySQL镜像的拉取、导入、MySQL容器的启动,再到MySQL命令行的连接等相关操作,从而具备使用Docker安装并部署MySQL的能力。本节要求您具备的基本能力有Linux,Docker,以及MySQL.

准备Docker环境

左侧的线上环境已经为您准备好了Docker环境,可以使用以下命令进行验证。

docker --version

准备MySQL镜像

通常,我们无论是使用MySQL还是其它的镜像,都是从Docker Hub这样的公有镜像仓库或私有镜像仓库中使用docker pull 镜像名这样的命令拉取,但因为拉取速度问题,我们采用直接导入镜像的方法来准备MySQL。

docker load < /share/images/mysql.5.7.tar

会出现如下提示

e9dc98463cd6: Loading layer 58.48MB/58.48MB

7288a4c980c6: Loading layer 338.4kB/338.4kB

683d7a4130fe: Loading layer 10.44MB/10.44MB

5547ac6d39e8: Loading layer 4.472MB/4.472MB

9a341d74c9b2: Loading layer 1.536kB/1.536kB

7acae26d323c: Loading layer 46.15MB/46.15MB

9e88946b01ba: Loading layer 32.77kB/32.77kB

7c808cd26970: Loading layer 3.584kB/3.584kB

252c276e7a19: Loading layer 258.4MB/258.4MB

3b7576a71f0c: Loading layer 9.728kB/9.728kB

7848732ef73b: Loading layer 1.536kB/1.536kB

Loaded image: mysql:5.7

在上方命令导入成功后,我们进行验证下:

docker images

出现以下提示则代表镜像导入成功

REPOSITORY TAG IMAGE ID CREATED SIZE

mysql 5.7 383867b75fd2 9 months ago 373MB

更多的详情可以查看MySQL镜像在Docker Hub上的文档:https://hub.docker.com/_/mysql/

创建并启动MySQL容器

使用如下命令来创建并启动MySQL容器

docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:5.7

参数解释

-–name:新创建的容器名,命名为mysql

-e:通过环境变量进行配置,此处配置mysql的root用户的登陆密码

-p:端口映射,表示在这个容器中使用3306端口(第二个)映射到实验环境主机的端口号也为3306(第一个)

-d:以后台方式运行MySQL容器

最后一个mysql为指定运行的镜像名,即为mysql

该命令会返回一个长串ID,该ID即为MySQL容器的ID。我们使用以下命令进行验证

docker ps

出现如下提示即代表容器成功启动了

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

39b632b42ddd mysql:5.7 "docker-entrypoint.s…" 5 seconds ago Up 4 seconds 0.0.0.0:3306->3306/tcp, 33060/tcp mysql

连接MySQL服务

通过容器内部连接MySQL服务

首先通过以下命令进入容器内部

docker exec -it mysql /bin/bash

使用以下命令进入MySQL

mysql -uroot -p

在弹出的Enter password:中输入123456,即可进行MySQL。成功进入后会出现如下类似提示

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 4

Server version: 5.7.27 MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

使用以下使用命令创建远程用户,并赋于远程用户连接本容器MySQL的权限。

GRANT all ON *.* TO 'remote'@'%' IDENTIFIED BY 'remotepwd';

flush privileges;;#刷新权限

exit;

退出容器环境,返回云实验主机环境

exit

从外部远程连接MySQL服务

因为我们的云实验主机环境上并没有MySQL命令行工具,所以我们需要先进行安装。

apt install mysql-client -y

安装完成后直接进行连接,这里并没有指定端口,因为容器的3306端口已经被映射到了云实验主机环境的3306端口上了。

mysql -uremote -p --protocol tcp

在弹出的Enter password:输入remotepwd,即可成功从主机命令行命令mysql进入到容器提供的MySQL服务了。

注意:这里需要用到--protocol tcp这个参数,因为命令行命令mysql默认使用的连接协议为socket协议,这里我们的云实验主机并没有安装MySQL服务,所以需要通过TCP端口连接到容器环境中去,因此需要指定这个参数。

总结

通过本节我们在线完成了从MySQL镜像的导入,到容器的运行,再到对MySQL服务的内部访问及外部访问。相信通过本节的在线实操,您能更好的掌握如何使用Docker安装MySQL。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值