laravel、lumen等.env文件数据库密码配置正确,连不上数据库
一次项目迁移,改完.env文件之后,数据库一直连接不上,报错:
SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)
用的laravel8.x,只修改了数据库配置。反复确认数据库密码没有错误。最终找到问题是数据库密码含有 ‘#’,而‘#’在.env文件里面被解析为注释的标志,导致从.env获取的数据库密码是错误的,lumen也会有这个问题。以下几种形式都是不行的:
DB_PASSWORD=#123456
DB_PASSWORD=123456#
DB_PASSWORD=123#456
解决办法:
1.修改数据库密码,去掉所包含的 ‘#’
2.删除掉.env里面DB_PASSWORD配置项,在config/database.php里面配置数据库密码
3.评论里给的解决方法:DB_PASSWORD=’#123456’,用引号包裹。目前来看也是最好的解决方法。
本作品采用《CC 协议》,转载必须注明作者和本文链接
配置使用引号包裹
#是注释,自动编译了
现在就该问了,同时有单引号双引号#的时候该怎么处理🌝
转换成实体符号
之前遇到过这种情况 转换成实体符号 可以