Mysql
從 PHP 5 更新到 PHP 7.0 - PHPmyAdmin 將顯示兩個伺服器登錄:localhost / localhost:3306
我將我的 Linux 14.04 LTS 更新到 18.04,並且不得不將 PHP 7.2 降級到 7.0,因為我需要執行一些無法預裝 PHP 7.2 的軟體。到目前為止,我使用的是 PHP 5。
在我現在執行所有東西之後,MySQL、Apache 和 PHP 我創建了一個新數據庫,現在我收到一個通知,控制使用者無法連接並且 ‘pmp’@localhost 已拒絕訪問。
當我登錄到伺服器 @ localhost 時會出現這種情況。
如果我選擇 localhost:3306 一切正常。但是我不知道為什麼我有兩個伺服器登錄?
我有點困惑,我有兩個伺服器可供選擇(本地主機和本地主機:3066),這是我沒想到的。我可以以某種方式刪除 PHPmyAdmin 的 localhost-access 並僅啟用 localhost:3306 嗎?
知道我必須做什麼嗎?我是數據庫新手。最好的
當我在我的 config.inc.php 中註釋這些行時,一切都按預期執行,我將只獲得一個可以登錄的伺服器帳戶。
/** * phpMyAdmin configuration storage settings. */ /* User used to manipulate with storage */ // $cfg['Servers'][$i]['controlhost'] = ''; // $cfg['Servers'][$i]['controlport'] = ''; $cfg['Servers'][$i]['controluser'] = 'pma'; $cfg['Servers'][$i]['controlpass'] = 'pmapass'; /* Storage database and tables */ $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin'; $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark'; $cfg['Servers'][$i]['relation'] = 'pma__relation'; $cfg['Servers'][$i]['table_info'] = 'pma__table_info'; $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords'; $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages'; $cfg['Servers'][$i]['column_info'] = 'pma__column_info'; $cfg['Servers'][$i]['history'] = 'pma__history'; $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs'; $cfg['Servers'][$i]['tracking'] = 'pma__tracking'; $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig'; $cfg['Servers'][$i]['recent'] = 'pma__recent'; $cfg['Servers'][$i]['favorite'] = 'pma__favorite'; $cfg['Servers'][$i]['users'] = 'pma__users'; $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups'; $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding'; $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches'; $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns'; $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings'; $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates'; /* Contrib / Swekey authentication */ // $cfg['Servers'][$i]['auth_swekey_config'] = '/etc/swekey-pma.conf';
有兩種方法可以連接到
mysql
localhost。一個是通過網路的連接@localhost:3306
,另一個是通過文件套接字的連接,例如/tmp/mysql.sock
. Filesocket 連接是首選,因為成本較低,mysql 庫在請求連接到 localhost 時選擇它(如果可用)。我不知道為什麼他們現在分開了。如果您只想在本地連接到 mysql,則可以完全禁用網路連接,
my.cnf
因此所有連接都被迫基於文件套接字。就沒有人可以通過網路連接到 mysql 而言,這也更安全一些。