首頁  >  文章  >  後端開發  >  訪問phpmyadmin出錯怎麼解決

訪問phpmyadmin出錯怎麼解決

WBOY
WBOY原創
2016-08-08 09:33:151332瀏覽


  XAMPP(Apache+MySQL+PHP+PERL)是一台功能強大的建置 XAMPP 軟體站整合軟體包,輕巧,使用起來很方便。它提供了強大的phpmyadmin資料庫管理工具,讓使用者對資料庫的使用和管理得心應手。對於無法在本機開啟 phpmyadmin的問題,我的解決方案如下:

      MySQL有一個預設的專用連接埠:3306,所以,如果你之前獨立安裝了MySQL,那麼3306埠已經被佔用。安裝XAMPP整合的MySQL時,必須重新設定獨立的端口,否則是不能訪問phpmyadmin的,我收到的報錯資訊見圖:


修改方法也很方便,打開XAMPP的控制面板,找到mysql右側的config,點擊,會出現my.ini的選擇項,這個就是mysql的設定檔了,如圖:


當然只是修改端口,我還是訪問不了。還要修改phpmyadmin的設定文件,這裡有兩個方法:

一、訪問phpmyadmin出錯的解決方案

     1、開啟xampp目錄(預設的安裝目錄,如果修改,請找到xampp的安裝目錄),開啟phpmyadmin的目錄,在該目錄下找到config.inc.php,我的預設設定:

<span><?php <span>/*</span> <span> * This is needed for cookie based authentication to encrypt password in</span> <span> * cookie</span> <span> */</span> $cfg[<span>'blowfish_secret'</span>] = <span>'xampp'</span>; <span>/* YOU SHOULD CHANGE THIS FOR A MORE SECURE COOKIE AUTH! */</span> <span>/*</span> <span> * Servers configuration</span> <span> */</span> $i = 0; <span>/*</span> <span> * First server</span> <span> */</span> $i++; <span>/* Authentication type and info */</span> $cfg[<span>'Servers'</span>][$i][<span>'auth_type'</span>] = <span>'config'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'user'</span>] = <span>'username'</span>;            //mysql用户名
$cfg[<span>'Servers'</span>][$i][<span>'password'</span>] = <span>'password'</span>;       //mysql密码
$cfg[<span>'Servers'</span>][$i][<span>'extension'</span>] = <span>'mysqli'</span>;     //扩展配置,若访问出现没有配置mysqli等错误,加上这个。默认是有的
$cfg[<span>'Servers'</span>][$i][<span>'AllowNoPassword'</span>] = <span>true</span>;
$cfg[<span>'Lang'</span>] = <span>''</span>; <span>/* Bind to the localhost ipv4 address and tcp */</span> $cfg[<span>'Servers'</span>][$i][<span>'host'</span>] = <span>'127.0.0.1'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'connect_type'</span>] = <span>'tcp'</span>; <span>/* User for advanced features */</span> $cfg[<span>'Servers'</span>][$i][<span>'controluser'</span>] = <span>'pma'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'controlpass'</span>] = <span>''</span>; <span>/* Advanced phpMyAdmin features */</span> $cfg[<span>'Servers'</span>][$i][<span>'pmadb'</span>] = <span>'phpmyadmin'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'bookmarktable'</span>] = <span>'pma_bookmark'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'relation'</span>] = <span>'pma_relation'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'table_info'</span>] = <span>'pma_table_info'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'table_coords'</span>] = <span>'pma_table_coords'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'pdf_pages'</span>] = <span>'pma_pdf_pages'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'column_info'</span>] = <span>'pma_column_info'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'history'</span>] = <span>'pma_history'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'designer_coords'</span>] = <span>'pma_designer_coords'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'tracking'</span>] = <span>'pma_tracking'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'userconfig'</span>] = <span>'pma_userconfig'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'recent'</span>] = <span>'pma_recent'</span>;
$cfg[<span>'Servers'</span>][$i][<span>'table_uiprefs'</span>] = <span>'pma_table_uiprefs'</span>; <span>/*</span> <span> * End of servers configuration</span> <span> */</span> ?></span>

     然後在$cfg['Lang'] = 後加入以下程式碼:

<span>$cfg[<span>'Servers'</span>][$i][<span>'port'</span>] = <span>'3307'</span></span>

     保存,重啟apache,在網址列輸入localhost/phpmyadmin,就可以直接進入phpmyadmin的管理介面了


這種方式不太安全,沒有驗證,誰都可以進入phpmyadmin管理資料庫了。重新回到設定文件,找到如下程式碼:

<span>$cfg[<span>'Servers'</span>][$i][<span>'auth_type'</span>] = <span>'config'</span></span>

     將上述程式碼的config改為cookie,或者http,就會出現驗證介面了(cookie和http對應的驗證介面在windows上還不一樣),我把它改成了cookie,出現如圖驗證介面


  2.這種方式也是修改phpmyadmin的設定文件,但路徑不一樣了,在phpmyadmin/libraries找到config.default.php文件,裡麵包含了伺服器的各種設定參數

<span>$cfg[<span>'Servers'</span>][$i][<span>'port'</span>] = <span>''</span>;</span>

     找到這一行程式碼,我的在132行,這個是設定埠的,值為空則是預設的3306,將其值改為3307後,儲存,重啟apache,同樣可以存取phpmyadmin了

 

二、phpmyadmin設定檔詳解

      開啟在phpmyadmin/libraries找到config.default.php文件,常用參數配置如下

<span>$cfg[<span>'PmaAbsoluteUri'</span>] = <span>''</span>; <span>//phpmyadmin的访问网址 ,默认就行</span> $cfg[<span>'TranslationWarningThreshold'</span>] = 80; <span>//服务器端口</span> $cfg[<span>'Servers'</span>][$i][<span>'host'</span>] = <span>'localhost'</span>;<span>//mysql主机ip,如果mysql和该phpmyadmin在同一服务器,则按默认localhost</span> $cfg[<span>'Servers'</span>][$i][<span>'port'</span>] = <span>'3307'</span>; <span>//mysql端口,默认3306,保留为空即可</span> $cfg[<span>'Servers'</span>][$i][<span>'user'</span>] = <span>'root'</span>; <span>//mysql用户名</span> $cfg[<span>'Servers'</span>][$i][<span>'password'</span>] = <span>''</span>;<span>//密码</span> $cfg[<span>'Servers'</span>][$i][<span>'auth_type'</span>] = <span>'cookie'</span>; <span>//认证方式</span> <span>/*端口、用户名、认证方式等也可以再config.inc.php中配置,并且优先级高</span> <span>*$cfg['Servers'][$i]['auth_type'] = 'config';  这个是在config.inc.php的</span> <span>*配置,若不修改这个值,仍然可以直接访问phpmyadmin</span> <span>*/</span> $cfg[<span>'DefaultLang'</span>]=<span>'zh'</span>; <span>//设置默认语言</span> </span>

       認證方式$cfg['Servers'][$i]['auth_type'] = ‘cookie'; 的值有四個:cookie,http,HTTP,config

      config方式即輸入phpmyadmin的存取網址即可直接進入,無需輸入使用者名稱和密碼,是不安全的,不建議使用。

       當項目設定為cookie,http或HTTP時,登入phpmyadmin需資料使用者名稱及密碼進行驗證,,具體如下:

      PHP安裝模式為Apache,可使用http及cookie;

        PHP安裝模式為CGI,可使用cookie .

       另外,在cookie模式下,還可以設定$cfg['blowfish_secret'] = ”; (短語密碼) ,至於設定為什麼密碼,由您自己決定,也可以不用理會。(沒測試過,這一點來自文檔說明,我覺得不用理會就行了)

下一篇:怎麼用PHP在HTML中產生PDF檔

 

以上就介紹了存取phpmyadmin出錯怎麼解決,包括了XAMPP,phpmyadmin方面的內容,希望對PHP教學有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn