首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将dbeaver与mysql的停靠实例本地连接

如何将dbeaver与mysql的停靠实例本地连接
EN

Stack Overflow用户
提问于 2021-07-05 15:39:21
回答 1查看 3.4K关注 0票数 4

我已经运行了这些命令:

代码语言:javascript
复制
docker run --name mysql-standalone -e 
MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=test -e MYSQL_USER=sa -e MYSQL_PASSWORD=password -d mysql:5.6

然后

代码语言:javascript
复制
 docker ps
CONTAINER ID   IMAGE       COMMAND                  CREATED       STATUS       PORTS      NAMES
35da304532c8   mysql:5.6   "docker-entrypoint.s…"   4 hours ago   Up 4 hours   3306/tcp   mysql-standalone
    docker exec -it mysql-standalone bash
    root@35da304532c8:/# mysql -uroot -p -A
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 6
    Server version: 5.6.51 MySQL Community Server (GPL)
    
    Copyright (c) 2000, 2021, 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>

但是,当我试图通过海狸连接时,我得到了这样的东西。

我哪里做错了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-05 16:21:25

停止现有的mysql容器,并使用以下方法删除它:

代码语言:javascript
复制
docker stop <container id>
docker rm <container id>

然后使用端口映射再次运行容器。使用-p 3306:3306将容器端口映射到主机端口。

完整的命令如下:

代码语言:javascript
复制
docker run --name mysql-standalone -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=test -e MYSQL_USER=sa -e MYSQL_PASSWORD=password -p 3306:3306 -d mysql:5.6

这一次,海狸连接应该可以工作。

解释

mysql服务器正在码头容器内的端口3306中运行。这个端口是容器内的,而不是主机。Dbeaver不知道这个容器,它试图连接到您的主机(您的笔记本/pc)端口。使用-p 3306:3306,您可以将容器端口映射到计算机端口。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68258754

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档