Craft CMS 3迁4至DDEV遇数据库连接及TablePlus用户创建问题求助
解决Craft CMS迁移DDEV的503错误与数据库连接问题
一、先确认DDEV默认数据库连接有效性
DDEV自带的db用户权限足够用,不用额外创建,先做这些检查:
- 核对
.env配置:确保DB_SERVER=db、DB_USER=db、DB_PASSWORD=db、DB_DATABASE=db,这些是DDEV默认值,别乱改。 - 验证数据库服务:执行
ddev ssh -s db进入数据库容器,再跑mysql -udb -pdb,能登录就说明数据库本身没问题。 - 执行Craft升级迁移:跑
ddev craft up,这步会自动处理Craft 3到4的数据库迁移,很多时候503就是因为没做这步。
二、TablePlus连接DDEV数据库及权限配置
不用在TablePlus新建用户,用DDEV默认的db用户就行,连接步骤:
- 打开TablePlus,新建MySQL连接
- 填写连接信息:
- 主机:
127.0.0.1 - 端口:执行
ddev describe查看项目的数据库端口(比如32768) - 用户名:
db - 密码:
db - 数据库名:
db
- 主机:
- 测试连接成功后保存。如果需要强化权限,在TablePlus的SQL控制台执行:
GRANT ALL PRIVILEGES ON *.* TO 'db'@'%'; FLUSH PRIVILEGES;
三、503错误的其他排查点
如果数据库没问题,再查这些:
- 看DDEV日志:执行
ddev logs,找PHP错误、Nginx启动失败的信息,比如依赖没装、文件权限不对。 - 重新安装Composer依赖:跑
ddev composer install,确保Craft 4的依赖都安装完整。 - 检查Nginx配置:如果自定义过Nginx配置,确认是否适配Craft 4的路由规则。
内容的提问来源于stack exchange,提问作者SebastianN
相关产品推荐
相关产品推荐

