Rumah >Operasi dan penyelenggaraan >Docker >怎么访问docker内的MySQL

怎么访问docker内的MySQL

angryTom
angryTomasal
2020-03-19 11:16:1516489semak imbas

怎么访问docker内的MySQL

1、获取mysql镜像

docker pull mysql:5.6

2、启动mysql镜像(推荐学习:MySQL视频教程

docker run -itd -P mysql:5.6 bash

其中 docker run是启动容器的命令;i是交互式操作,t是一个终端,d指的是在后台运行,

-P指在本地生成一个随机端口,用来映射mysql的3306端口,mysql指运行mysql镜像,bash指创建一个交互式shell。

3、查看已经运行的docker镜像

docker ps -a

微信截图_20200319110849.png

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

4、连接到mysql镜像中

docker exec -it relaxed_hodgkin bash

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

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

 微信截图_20200319110930.png

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

service mysql status

mysql没有启动可以使用以下命令启动

service mysql start

6、如何在外部使用root连接这个mysql?   

为了安全,首先需要设置root帐号的密码,如下

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

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

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

此时,已经可以在宿主机连接docker内的MySQL了!

更多相关教程,请关注PHP中文网docker教程栏目。

Atas ialah kandungan terperinci 怎么访问docker内的MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:docker有哪些特点Artikel seterusnya:怎么把jar包变成docker容器