mysql 在使用DDEV和TablePlus的Craft CMS项目中,连接到数据库时出现问题,如何解决?

mxg2im7a  于 2023-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(140)

我正试图从Craft CMS 3升级到Craft CMS 4,遇到了一些问题。
我正试图将我在Craft 3中的项目从使用MAMP Pro迁移到ddev,并在开始时取得了一些成功。我已经在我的Mac上安装了Docker Desktop,并在终端中运行了一些命令,跟随Craft Quest上的视频来使用ddev设置Craft CMS。
问题是我的网页没有显示在浏览器中。我怀疑这与数据库连接有关。默认值:.env文件中的服务器、用户、数据库密码和数据库名称都自动配置为"db"。这是正常的,因为我在用ddev创建项目时使用了ddev config --project-type=craftcms命令。
问题是我的网站文件无法使用新的.env用户和数据库凭据连接到数据库。
我还怀疑主要的问题是,当我使用试用版的TablePlus时,由于某种原因,软件不允许我创建一个具有数据库权限的新用户。
我怀疑,由于我无法在TablePlus中创建具有数据库权限的新用户,这可能是我的网页无法正常加载的原因。因为web文件与数据库连接时会遇到问题,并且没有授予访问数据库权限的用户。
这里有人有使用TablePlus的经验吗?你能帮我浏览这个数据库软件的TablePlus,并帮助我找到一种方法来添加一个新的用户的数据库是用ddev设置?
任何建议都很感激。我热衷于使用TablePlus的原因是因为它与ddev紧密集成。
我试图在终端中设置ddev,我在本地目录中设置了隐藏的ddev文件。但是当我运行命令时:ddev start并转到我的本地服务器上的URL,我得到一个HTTP 503 – Service Unavailable错误消息。我不确定到底是什么导致了这个错误。
我很感激你的建议,谢谢。

xzlaal3s

xzlaal3s1#

你有很多事情要做,必须一次做一件。
首先,对于Craft 3,您需要在DDEV中使用php项目类型。craftcms项目类型针对Craft 4进行了优化。升级后,您可以切换它。由于Craft 3具有非常自由的配置选项,因此DDEV创建的.env文件可能不是最佳的(或正确的)。
其次,DDEV中默认数据库的数据库详细信息是hostname:db,数据库:用户名:db和密码db。您希望在站点需要的任何位置手动配置这些配置。
要导入到默认数据库,请使用ddev import-db。例如,ddev import-db --src=/path/to/mydb.sql.gz
现在,对于TablePlus:跟我们说的那些事一点关系都没有。它是一个数据库浏览器,如果你安装了它并且使用了ddev tableplus,它会自动连接到默认的db数据库。你甚至不需要tableplus做任何事情。但是,一旦你有你的项目工作,你可以用它来浏览你的数据库。

相关问题