mysql8.0.11的坑早知道


1、plugin caching_sha2_password could not be loaded

我在mac上用Sequel Pro連數據庫的時候,會報出以上錯誤,這是應為8.0.11把身份認證插件改成了 caching_sha2_password ,而客戶端沒法使用此插件。

這是我們只要用命令行進去mysql,然后執行

ALTER USER 'YOURUSERNAME'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YOURPASSWORD';

比如:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

然后重新加載下數據庫配置

FLUSH PRIVILEGES;

這樣就可以用客戶端連接數據庫了。

如果你想徹底更換所有用戶身份認證插件,可以修改my.cnf。在末尾增加一行

default_authentication_plugin=mysql_native_password

 

 

2、Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER'

我在使用laravel框架執行migrate命令時,出現錯誤

QLSTATE[42000]: Syntax error or access violation: 1231 Variable 'sql_mode' can't be set to the value of NO_AUTO_CREATE_USER '

是因為mysql在8.0版本中已經移除了 NO_AUTO_CREATE_USER 這個模式。

解決方案:只需要將 config/database.php 配置文件中mysql 的 strict 的值改為false即可!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM