GitHub克隆项目迁移报错SQLSTATE[HY000][1045],.env配置无效求助
解决数据库迁移1045权限错误及管理员控制台失效问题
1. 修正.env数据库配置
你当前的.env里DB_USERNAME和DB_PASSWORD是空的,但错误提示明确显示尝试用密码连接root用户,这说明要么系统读取了旧的缓存配置,要么你本地MySQL的root用户实际有密码未正确填写。
- 先确认本地MySQL登录凭据:
打开终端/命令行,输入mysql -u root -p,按提示输入密码能登录的话,记下该密码;若直接回车即可进入,说明root用户无密码。 - 修改.env数据库配置:
若root用户有密码,配置如下:
若root用户无密码,配置如下:DB_USERNAME=root DB_PASSWORD=你的MySQL root密码DB_USERNAME=root DB_PASSWORD= - 额外检查:
DB_DATABASE=cms_pasti对应的数据库需提前在MySQL中创建,登录MySQL后执行CREATE DATABASE cms_pasti;即可。
2. 清除Laravel配置缓存
Laravel会缓存.env配置,修改后必须清除缓存才能生效,在项目根目录执行以下命令:
php artisan config:clear php artisan cache:clear
3. 重新执行数据库迁移
配置修正并清除缓存后,执行迁移命令:
php artisan migrate
4. 恢复管理员控制台功能
控制台创建管理员失效大概率是数据库连接失败导致的,待上述数据库问题解决后,运行项目对应的创建命令(如php artisan admin:create,具体以项目文档为准)即可正常使用。
额外排查点
- 若仍提示1045错误,尝试将
DB_HOST=localhost改为DB_HOST=127.0.0.1,部分环境下二者的MySQL连接规则存在差异 - 确认MySQL服务处于运行状态:Windows查看系统服务列表,Linux执行
systemctl start mysql启动,Mac执行brew services start mysql启动
内容的提问来源于stack exchange,提问作者Nasya
相关产品推荐
相关产品推荐

