环境要求:
具有docker的服务器或者虚拟机

笔者这里已经有一个准备好的lamp的容器,物理机链接docker容器的Mysql数据库为案例进行演示:

1、进入docker 的容器

在这里插入图片描述
注意笔者这里隐射的端口是3307,需要根据你自己的实际需求进行端口的隐射操作。

 docker exec -it 容器名称 /bin/bash

进入容器是这个界面。
在这里插入图片描述
一般情况下 lamp 容器默认是安装成功了mysql 的,所以在固定的位置修改对应的mysql 配置。

2、修改mysql 的配置信息
使用vim 对mysql 的配置信息进行修改操作。如果没有安装vim则可以使用下面的命令

# 安装 vim
apt install vim
# 或者
yum install vim

进入修改lamp 容器中对应的mysql 配置文件:

vim /etc/mysql/mysql.conf.d/mysqld.cnf 

需要将 bind-address = 0.0.0.0 或者 bind-address = 127.0.0.1 前面加上# 进行注释操作。
在这里插入图片描述
然后退出,重启mysql服务

# 重启
service mysql restart

在这里插入图片描述
然后进入mysql系统对内部进行设置

3、mysql 的内部设置

登陆mysql

mysql -uroot

注意刚开始容器是没有密码的。如果有密码请忽略这一步骤。使用 mysql -u root -p 进行登陆

对mysql配置进行设置

use mysql;
# 设置密码
update user set authentication_string = password('123456') where user = 'root';
# 开启密码登陆
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
# 设置远程链接的密码和用户
grant all on *.* to root@'%' identified by '123456' with grant option;
# 刷新权限
FLUSH PRIVILEGES;
#退出
exit

然后重启数据库服务

service mysql restart

完成以上操作步骤基本上就能够实现Navicat的链接。

4、Navicat 链接
打开Navicat进行远程链接。自己的服务器的ip或者虚拟机的ip
注意一定要确定mysql 数据库 在容器中隐射的端口号。笔者这里隐射的3307:3306 端口
在这里插入图片描述
完成了Navicat的远程链接,可以正常的对容器的数据库进行管理。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐