Navicat 连接远程服务器里 docker 中的 mysql(已解决)

这篇具有很好参考价值的文章主要介绍了Navicat 连接远程服务器里 docker 中的 mysql(已解决)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 开启端口映射

docker中,我们需要将允许外界访问的端口通过配置文件映射出来,本文不需要将3306端口映射,但是该部分还是有实际用途的,因此在此记录。着急可以跳过第一部分。
在创建并运行镜像的时候,我们会初始化参数,例如:

docker run -p 20000:22 -p 3000:3000 --name my_docker_sercer -itd docker_image:1.0 # 创建并运行docker_image:1.0镜像

但是,我们有时候会在创建后增加映射端口,此时,我们可以通过修改配置文件的方式处理。

  • 在容器外,使用root用户登录
docker ps -a # 查看所有容器信息
docker inspect xxx |grep Id # 查看需要添加端口映射的容器的id(xxx是需要添加端口映射的容器的名称)

navicat怎么连docker里的mysql,项目部署,数据库

  • 进入目录/var/lib/docker/containers

如果容器还在运行,需要先停止docker服务:systemctl stop docker
navicat怎么连docker里的mysql,项目部署,数据库
查看该目录下的所有容器,进入需要增加端口号的容器。
navicat怎么连docker里的mysql,项目部署,数据库
编辑hostconfig.json添加端口映射(参考其他端口格式):
navicat怎么连docker里的mysql,项目部署,数据库
编辑config.v2.json公开添加的端口(参考其他端口格式):
navicat怎么连docker里的mysql,项目部署,数据库

  • 重启容器:
systemctl start docker # 启动docker服务
docker start kob_server # 后面为自己的容器名称
# 启动容器后记得重启自己的服务(mysql, java, nginx等)
  • 到服务器中添加安全组(ip可以根据实际需求只放行本地ip):

navicat怎么连docker里的mysql,项目部署,数据库

2. 修改mysql配置

正文开始。

  • 修改mysql中的root用户访问权限

将mysql中的user表的root用户的host字段修改为%

show databases;
use mysql;
SELECT user, host FROM user;
UPDATE user SET host = '%' WHERE user = 'root';
# 最后记得刷新一下
FLUSH PRIVILEGES;

navicat怎么连docker里的mysql,项目部署,数据库

  • 修改配置文件

其实如果我们后面使用ssh连接容器,这一步修改没有必要,因为我们连接容器后就能够通过127.0.0.1访问数据库,但是可能有的同学想通过其他当时连接,这里将方法说明。着急的直接进入下一节。

这里有个坑,很多教程修改的是my.conf文件,但是mysql8以后就不在该文件中了,而是在mysqld.cnf中。

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

navicat怎么连docker里的mysql,项目部署,数据库
进入文件之后查找到bind-address,将这一行注释掉(需要一点点vim知识)
navicat怎么连docker里的mysql,项目部署,数据库

  • 最后重启mysql服务
service mysql restart

3. 在navicat中连接mysql

  • 在navicat中连接mysql数据库,选择ssh

需要注意的是,端口应选择容器的运行端口,密码是用户登录密码,不是mysql的密码。
navicat怎么连docker里的mysql,项目部署,数据库

  • 然后选择常规:

注意这里的主机是服务器容器中的本地ip,因为我们是通过ssh连接到容器了。
navicat怎么连docker里的mysql,项目部署,数据库

  • 最后点击测试连接并确定

navicat怎么连docker里的mysql,项目部署,数据库
才疏学浅,有问题请指正。文章来源地址https://www.toymoban.com/news/detail-854274.html

到了这里,关于Navicat 连接远程服务器里 docker 中的 mysql(已解决)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Navicat连接服务器上Docker安装的mysql提示拒绝连接

    英语翻译 --- ‘不允许主机连接到此MySQL服务器’ (意思是本地账号连接可以登录,但是远程登陆不行) ①进入docker中的mysql容器 ②登陆mysql ③执行以下步骤 重新连接即可

    2024年02月16日
    浏览(19)
  • Ubuntu安装MySQL服务器详细步骤(包括设置外网利用Navicat等工具远程连接MySQL服务器)!——一看就会,跟着做就对!

    Ubuntu安装MySQL服务器详细步骤(包括设置外网利用Navicat等工具远程连接MySQL服务器)!——一看就会,跟着做就对!

    在开始安装前,先更新一下系统。命令如下: sudo apt update sudo apt upgrade 使用APT方式安装MySQL8时,通常会安装MySQL的最新版本,且能够自动配置服务和环境变量。 sudo apt install mysql-server -y 安装完成后,MySQL会自动启动,可以使用以下命令测试MySQL安装情况 sudo service mysql status 或

    2024年02月05日
    浏览(14)
  • nvidia驱动 && docker镜像cuda ,anaconda,pytorch下载ubuntu20.04&&pycharm远程连接远端服务器docker中的conda环境(完整操作)

    nvidia驱动 && docker镜像cuda ,anaconda,pytorch下载ubuntu20.04&&pycharm远程连接远端服务器docker中的conda环境(完整操作)

    内含一整套操作,从设置容器到远程连接。 操作环境: 服务器:ubuntu 20.04 本机:win10 IDE:pycharm 专业版 下载驱动很容易的,下面我们来介绍一种最简单的方法。    插个小曲,删除驱动代码 参考网站里有很详细的解说,我们只再列出需要的代码。  当输入这个命令时 sudo d

    2024年02月04日
    浏览(13)
  • VsCode容器开发 - VsCode连接远程服务器上的docker

    VsCode容器开发 - VsCode连接远程服务器上的docker

    之前在服务器上的Docker内开发,文件编辑起来就很不爽。不如 使用VsCode直接打开远程服务器上的Docker ,这样就能在VsCode里直接无缝编辑Docker里的文件了。 但是百度和必应得到的中文结果都很奇葩,都是什么“给docker添加端口映射”、“给服务器开放被映射的端口”、“远程

    2024年01月23日
    浏览(29)
  • navicat连接云服务器mysql教程

    navicat连接云服务器mysql教程

    包含navicat报错解决! 主机名或ip地址:填写服务器公网ip 用户名和密码:填写linux系统上对应的mysql账号和密码 端口:mysql端口为3306 原因:root没有开放远程连接权限 解决方法: 修改前: 修改后: 解决方法: 添加规则使mysql允许通过防火墙

    2024年02月03日
    浏览(12)
  • Navicat使用HTTP通道服务器进行连接mysql数据库(超简单三分钟完成),centos安装nginx和php,docker安装nginx+php合并版

    Navicat使用HTTP通道服务器进行连接mysql数据库(超简单三分钟完成),centos安装nginx和php,docker安装nginx+php合并版

    因为数据库服务器在外网是不能直接连接访问的,但是可以访问网站,网站后台就能访问数据库,所以在此之前,访问数据库的数据是一件非常麻烦的事情,在平时和运维的交流中发现,他们会使用ssh通道进行连接访问数据库,之前并没在意这个东西,直到运维人员一直连不

    2024年02月10日
    浏览(20)
  • 在服务器的docker容器中安装Anaconda配置环境以及使用编程工具远程连接环境

    在服务器的docker容器中安装Anaconda配置环境以及使用编程工具远程连接环境

    一、连接服务器下载Anaconda 3 使用win+r输入cmd打开命令行,在命令行中输入ssh -p xxxxx(你的端口号如10101,下图红色部分)  root@xxx.xxx.xxx.xxx(服务器ip地址下图蓝色部分)   第一次连接时,连接没问题会出现Are you sure you want to continue connecting (yes/no/[fingerprint])?之后就不会出现了。 输

    2024年02月03日
    浏览(13)
  • Navicat无法连接服务器数据库的解决方法

    Navicat无法连接服务器数据库的解决方法

    服务器3306端口无法访问 2.1修改mysql的root账号可任意ip进行连接 刷新使其生效 2.2放开服务器的3306端口 查看端口开启情况 放开3306端口 重启防火墙(修改配置后要重启防火墙) 2.3打开服务器平台(腾讯云、阿里云…)3306端口 只是打开了服务器的3306端口,没有打开服务器平台(腾

    2024年02月16日
    浏览(14)
  • 解决Navicat连接数据库服务器失败的问题

    解决Navicat连接数据库服务器失败的问题 Navicat是一款常用的数据库管理工具,它提供了连接数据库服务器的功能,但有时候我们可能会遇到连接失败的情况。本文将介绍一些常见的原因和解决方法,帮助您解决Navicat连接数据库服务器失败的问题。 检查数据库服务器地址和端

    2024年02月08日
    浏览(12)
  • vscode 远程连接内网服务器和通过跳板机远程连接外网服务器

    vscode 远程连接内网服务器和通过跳板机远程连接外网服务器

    若本地没有id_rsa文件,可打开cmd进入.ssh目录下输入命令:ssh-keygen,创建该文件,会提示输入该文件保存地址以及设置秘钥密码(最好不要设置密码,不然不方便免密登录,直接按回车键生成密钥),按需输入即可;详细方法见博客vscode通过跳板机远程服务器 生成密钥和公钥

    2024年01月18日
    浏览(15)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包