Linux下thinkPHP連接數(shù)據(jù)庫報如下錯:PDOException in Connection.php line 295(SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES))

[重要通告]如您遇疑難雜癥,本站支持知識付費業(yè)務,掃右邊二維碼加博主微信,可節(jié)省您寶貴時間哦!

今天測試了一個tlinkphp的程序,不知道咋地了,始終就是不能連接數(shù)據(jù)庫,很是悲劇,具體請看;

SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)

  1. $this->fetchType = $config['result_type'];
  2. }
  3. try {
  4. if (empty($config['dsn'])) {
  5. $config['dsn'] = $this->parseDsn($config);
  6. }
  7. if ($config['debug']) {
  8. $startTime = microtime(true);
  9. }
  10. $this->links[$linkNum] = new PDO($config['dsn'], $config['username'], $config['password'], $params);
  11. if ($config['debug']) {
  12. // 記錄數(shù)據(jù)庫連接信息
  13. Log::record('[ DB ] CONNECT:[ UseTime:' . number_format(microtime(true) - $startTime, 6) . 's ] ' . $config['dsn'], 'sql');
  14. }
  15. } catch (\PDOException $e) {
  16. if ($autoConnection) {
  17. Log::record($e->getMessage(), 'error');
  18. return $this->connect($autoConnection, $linkNum);

這種錯誤,基本屬于數(shù)據(jù)庫連接不正常所導致的,那必須要看一下數(shù)據(jù)庫連接文件,有些時候不是單一的一個數(shù)據(jù)庫文件,可能會是多個,多個的時候可能就會顯示這樣;具體的請參閱忘記mysql數(shù)據(jù)庫root用戶密碼的解決辦法要么就卸載重裝數(shù)據(jù)庫Windows下如何干凈利索的完全卸載Mysql以及?mysql8.0如何在windows 10 (win10)下卸載干凈具體多樣化的東西,都需要根據(jù)多方面的參考才可以,還有一種說辭的,具體請看下面的說法;

本地的數(shù)據(jù)庫的密碼默認是 root 導致(比如:phpstudy),到時候更改密碼測試一下,這個問題有待確認,不能說就能解決;

還有其他一種比較靠譜的:

找了N多方法來嘗試,重裝apache、mysql。安裝集成軟件都試過了。錯誤一樣。

后來細細分析,PDOException in Connection指的不就是PDO異常嗎?

然后去了解了一些PDO的知識,找到了問題原因。

然后默默的去php.ini中找到

extension=php_pdo.dll
extension=php_pdo_sqlite.dll

將這兩句去掉前面的分號;

php7.0以上是這兩句

extension=pdo
extension=pdo_mysql

然后重啟apache ok搞定;

PS:延伸閱讀;(下面闡述的一個問題點,多數(shù)適合windows系統(tǒng))

需要從微軟下載sqlserver關于php的驅(qū)動,然后把dll文件放到本地php的ext目錄,然后需要把文件名添加到php.ini中,注意、注意、注意:這里邊是兩個文件:
extension=php_sqlsrv.dll
extension=php_pdo_sqlsrv.dll
一個帶有pdo,一個不帶,tp5默認都是pdo鏈接方式,故請確認下是否已添加extension擴展,這個加好后,基本就不會報這個錯了

我這個問題是啥問題呢?在tlinkphp根目錄下也會有其他的文件,文件不一,具體請看;

比如上面的圖片中,幾個無后綴的文件,就可能寫入著各種數(shù)據(jù)庫連接信息或者其他全局信息,所以看待問題,要多種的選擇才可以;比如我這里就是 修改.env 中的數(shù)據(jù)庫賬號密碼 才可以打開;

 

問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信

所寫所說,是心之所感,思之所悟,行之所得;文當無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!

支付寶贊助
微信贊助

免責聲明,若由于商用引起版權糾紛,一切責任均由使用者承擔。

您必須遵守我們的協(xié)議,如您下載該資源,行為將被視為對《免責聲明》全部內(nèi)容的認可->聯(lián)系老梁投訴資源
LaoLiang.Net部分資源來自互聯(lián)網(wǎng)收集,僅供用于學習和交流,請勿用于商業(yè)用途。如有侵權、不妥之處,請聯(lián)系站長并出示版權證明以便刪除。 敬請諒解! 侵權刪帖/違法舉報/投稿等事物聯(lián)系郵箱:service@laoliang.net
意在交流學習,歡迎贊賞評論,如有謬誤,請聯(lián)系指正;轉(zhuǎn)載請注明出處: » Linux下thinkPHP連接數(shù)據(jù)庫報如下錯:PDOException in Connection.php line 295(SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES))

發(fā)表回復

本站承接,網(wǎng)站推廣(SEM,SEO);軟件安裝與調(diào)試;服務器或網(wǎng)絡推薦及配置;APP開發(fā)與維護;網(wǎng)站開發(fā)修改及維護; 各財務軟件安裝調(diào)試及注冊服務(金蝶,用友,管家婆,速達,星宇等);同時也有客戶管理系統(tǒng),人力資源,超市POS,醫(yī)藥管理等;

立即查看 了解詳情