据我所知,DDEV 为 phpMyAdmin 提供了配置选项,以便轻松地使用容器式 MySQL/MariaDB 数据库。但我宁愿使用不同的工具,例如phpStorm 或 DBeaver 等。有没有办法实现我的愿望?
补充 docker-compose 配置我相应地暴露了端口 3306。
version: '3.6'
services:
web:
ports:
- 3306:3306
尝试从我的客户端主机连接到容器式 MariaDB 数据库,如下所示。
$ mariadb --host=foo.ddev.site --user=db --password=db --database=db
ERROR 2013 (HY000): Lost connection to MySQL server at 'handshake: reading initial communication packet', system error: 11
数据库端口已经在 ddev 中公开,因此可以轻松地与很多很多外部工具一起使用。
例如,
ddev mysql
可以让您直接访问,还有ddev sequelpro
和ddev sequelace
和ddev tableplus
,并且自定义命令中有一个示例,展示了如何使用mysqlworkbench执行此操作(请参阅~/.ddev/命令/主机/mysqlworkbench.example)。
许多其他数据库浏览器都有直接支持,请参阅https://ddev.readthedocs.io/en/stable/users/usage/database-management/#database-guis
所有这些都会占用已经公开的数据库端口。
任何项目上的ddev describe
都会告诉您如何访问端口。
项目 .ddev/config.yaml 中的
host_db_port
设置可用于锁定暴露的端口,以便您可以轻松地将其与 PhpStorm 一起使用。
本文还介绍了使用 ddev 访问数据库的多种方法中的一些,https://ddev.com/blog/ddev-local-database-management/