如何将 Sequel Pro(在 Mac 上)连接到 Docker 中的 MySQL
How to connect Sequel Pro (on a Mac) to a MySQL in a Docker
在我的新工作中,我得到了 Mac(Mac Mini M1 with Big Sur),而我使用了 Windows 和一些 Linux 我的全部生活。第一周了。
我有一个可用的 Docker 容器,其中包含 mysql-server 和 PhpMySql。
尽管如此,我想在本地使用 Sequel Pro 连接到 Mysql,但我完全失败了。
Screenshot of error: "Connection failed! Unable to connect to host 127.0.0.1, or the request timed out."
我已经安装了 mysql-client 和 Homebrew,我可以使用 docker 的 mysql 毫无问题地连接:
mysql -h 127.0.0.1 -u sail -p
我的.env文件如下:
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=laravel8vue
DB_USERNAME=sail
DB_PASSWORD=password
我的docker-compose.yml(版本3)与mysql相关如下:
mysql:
image: 'mysql/mysql-server:8.0.26'
ports:
- '${FORWARD_DB_PORT:-3306}:3306'
environment:
MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}'
MYSQL_DATABASE: '${DB_DATABASE}'
MYSQL_USER: '${DB_USERNAME}'
MYSQL_PASSWORD: '${DB_PASSWORD}'
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
volumes:
- 'sailmysql:/var/lib/mysql'
restart: unless-stopped
networks:
- sail
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"]
retries: 3
timeout: 5s
我的 Sequel Pro 使用带有 following settings (screenshot) 的标准选项卡:
主机:127.0.0.1
用户名:sail
密码:密码
数据库:laravel8vue
端口:3306
我怎么可以连接 mysql-client 但不能连接 Sequel Pro?我错过了什么?
感谢您的宝贵时间!
您必须向主机公开数据库端口。如果您的设备中已经 运行 mysql 服务器并尝试 运行 docker 中的 mysql 意味着您必须更改 [=18] 中的端口号=]-撰写。
port:
- 3307:3306
在Sequel亲,你的配置应该是这样的
UserName: user
Host: Your system IP / localhost /
DBPassword: password
port: 3307
我已经放弃 Sequel Pro。
Sequel Ace 是一个相同风格的开源替代品。
https://github.com/Sequel-Ace/Sequel-Ace
它在图形上是一样的,而且马上就可以使用了!
在我的新工作中,我得到了 Mac(Mac Mini M1 with Big Sur),而我使用了 Windows 和一些 Linux 我的全部生活。第一周了。
我有一个可用的 Docker 容器,其中包含 mysql-server 和 PhpMySql。
尽管如此,我想在本地使用 Sequel Pro 连接到 Mysql,但我完全失败了。 Screenshot of error: "Connection failed! Unable to connect to host 127.0.0.1, or the request timed out."
我已经安装了 mysql-client 和 Homebrew,我可以使用 docker 的 mysql 毫无问题地连接:
mysql -h 127.0.0.1 -u sail -p
我的.env文件如下:
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=laravel8vue
DB_USERNAME=sail
DB_PASSWORD=password
我的docker-compose.yml(版本3)与mysql相关如下:
mysql:
image: 'mysql/mysql-server:8.0.26'
ports:
- '${FORWARD_DB_PORT:-3306}:3306'
environment:
MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}'
MYSQL_DATABASE: '${DB_DATABASE}'
MYSQL_USER: '${DB_USERNAME}'
MYSQL_PASSWORD: '${DB_PASSWORD}'
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
volumes:
- 'sailmysql:/var/lib/mysql'
restart: unless-stopped
networks:
- sail
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"]
retries: 3
timeout: 5s
我的 Sequel Pro 使用带有 following settings (screenshot) 的标准选项卡:
主机:127.0.0.1 用户名:sail 密码:密码 数据库:laravel8vue 端口:3306
我怎么可以连接 mysql-client 但不能连接 Sequel Pro?我错过了什么?
感谢您的宝贵时间!
您必须向主机公开数据库端口。如果您的设备中已经 运行 mysql 服务器并尝试 运行 docker 中的 mysql 意味着您必须更改 [=18] 中的端口号=]-撰写。
port:
- 3307:3306
在Sequel亲,你的配置应该是这样的
UserName: user
Host: Your system IP / localhost /
DBPassword: password
port: 3307
我已经放弃 Sequel Pro。
Sequel Ace 是一个相同风格的开源替代品。
https://github.com/Sequel-Ace/Sequel-Ace
它在图形上是一样的,而且马上就可以使用了!