我刚刚安装了mysql 8.0.11
,将我的应用程序的数据库转移到其中,并更改了laravel数据库设置以使用新的数据库。现在每次我尝试登录时都会出现以下错误:
ERROR 1231 (42000):
Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER'
我试着 NO_AUTO_CREATE_USER
手动:
set global sql_mode="..., NO_AUTO_CREATE_USER, ...";
但我也犯了同样的错误。我怎样才能解决这个问题并运行laravel 5.5
使用mysql 8.0.11
?
7条答案
按热度按时间lmvvr0a81#
您的laravel连接(config/database.php)应该是这样的:
zbq4xfa02#
由于mysql 8.0目前(像今天一样)不支持no\u auto\u create\u user,您应该在备份中按空格查找并替换:“no\u auto\u create\u user”
这样,5.7版的备份将在8.0版中恢复正常
uubf1zoe3#
我正在WindowsWampServer上使用MySQL8.0.18,并将以下内容添加到database.php for laravel
j0pj023g4#
laravel 5.5的下一个版本将增加对mysql 8.0的支持:https://github.com/laravel/framework/pull/24038
更新:Laravel5.5.41已经发布。
jdgnovmf5#
在每个mysql连接上添加以下内容:
xzv2uavs6#
mysql 8.0不支持no\u auto\u create\u user
文档:https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-11.html
0x6upsns7#
如何修复laravel no\ u auto\ u create\ u user code for database.php