![](/img/trans.png)
[英]mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication
[英]“cannot connect using the old insecure authentication” but I have no old passwords?
對於我自己的情況沒有解決方案的標准錯誤:
mysqlnd無法使用舊的不安全身份驗證連接到MySQL 4.1+。 請使用管理工具通過命令SET PASSWORD = PASSWORD('your_existing_password')重置密碼。
這將在mysql.user中存儲一個新的,更安全的哈希值。 如果此用戶在由PHP 5.2或更早版本執行的其他腳本中使用,則可能需要從my.cnf文件中刪除old-passwords標志[2000]
我已經用Google搜索了很多,嘗試了不同的建議,但是我仍然不知道現在該怎么做,因為我在MySQLManager中做了這樣的查詢:
SELECT LENGTH(Password) FROM mysql.user;
show variables like 'old_passwords';
我得到了這樣的答案:
LENGTH(Password)
41
41
41
old_passwords: OFF
這似乎是密碼的正確哈希方法(不是16),正確的old_password值(OFF),但是我無法修復錯誤,甚至不知道應該嘗試什么。 我將OpenServer 5.2.2與:
數據庫服務器:
網絡服務器:
UPD:舊版本的php代碼可以用舊的16位代碼加密密碼嗎? 也許這是原因?
尚未解決,但得到解決-我已經使用未選中的選項“以十六進制保存二進制字段”從站點源數據庫導出數據庫,下載了新版本的php站點-然后輸入了正確的用戶名和密碼,並且一切正常
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.