我正在尝试设置一个用于开发的MySQL容器。
所以我使用了docker-compose
来设置它。
容器和MySQL看起来都没问题。问题是我想从DBeaver客户端连接到它,但我找不到如何操作。
这是我的docker-compose.yml
文件:
version: '2'
services:
db:
image: 'mysql:5.7'
volumes:
- '~/dev/dbs-data/mysql:/var/lib/mysql'
restart: 'always'
expose:
- '3306'
ports:
- '3306:3306'
environment:
MYSQL_ROOT_PASSWORD: 'pass'
MYSQL_DATABASE: 'db'
MYSQL_USER: 'user'
MYSQL_PASSWORD: 'pass'
当我尝试从DBeaver
连接它时,我收到以下信息:
java.sql.SQLException: null, message from server:
"Host '172.18.0.1' is not allowed to connect to this MySQL server"
更新
我并非尝试使用IP 172.18.0.1
进行连接。我已经尝试使用 localhost:3306
,127.0.0.1:3306
,以及docker分配的子IP 0.0.0.0:3306
进行连接。
localhost
。此外,在端口映射条目中只需更改为3306:3306
,并且去掉其中的localhost
部分... - nwinklerjava.sql.SQLException: null, message from server: "Host '172.18.0.1' is not allowed to connect to this MySQL server"
。 - Giovane