PhpMyAdmin

PhpMyAdmin

phpMyAdmin 是一個以PHP為基礎,以Web-Base方式架構在網站主機上的MySQL的資料庫管理工具,讓管理者可用Web接口管理MySQL資料庫。藉由此Web接口可以成為一個簡易方式輸入繁雜SQL語法的較佳途徑,尤其要處理大量資料的匯入及匯出更為方便。其中一個更大的優勢在於由於phpMyAdmin跟其他PHP程式一樣在網頁伺服器上執行,但是您可以在任何地方使用這些程式產生的HTML頁面,也就是於遠端管理MySQL資料庫,方便的建立、修改、刪除資料庫及資料表。也可藉由phpMyAdmin建立常用的php語法,方便編寫網頁時所需要的sql語法正確性。

功能特點

PHP是一個基於服務端來創建動態網站的腳本語言,您可以用PHP和HTML生成網站主頁。當一個訪問者打開主頁時,服務端便執行PHP的命令並將執行結果傳送至訪問者的瀏覽器中,這類似於ASP和CoildFusion,然而PHP和他們不同之處在於PHP開放源碼和跨越平台,PHP可以運行在WINDOWS和多種版本的LINUX上。它不需要任何預先處理而快速反饋結果,它也不需要mod_perl的調整來使您的伺服器的記憶體映象減小。PHP消耗的資源較少,當PHP作為ApacheWeb伺服器一部分時,運行代碼不需要調用外部二進制程式,伺服器不需要承擔任何額外的負擔。
除了能夠操作您的頁面外,PHP還能傳送HIIP的標題。您可以設定cookie,管理數字簽名和重定向用戶,而且它提供了極好的連通性到其它資料庫(還有ODBC),集成各種外部庫來做用PDF文檔解析XML的任何事情。

phpMyAdmin 是一個用PHP編寫的軟體工具,可以通過web方式控制和操作MySQL資料庫。通過phpMyAdmin 可以完全對資料庫進行操作,例如建立、複製和刪除數據等等。如果使用合適的工具,MySQL資料庫的管理就會變得相當簡單。套用 MySQL 命令行方式需要對 MySQL 知識非常熟悉,對SQL語言也是同樣的道理。不僅如此,如果資料庫的訪問量很大,列表中數據的讀取就會相當困難。

當前出現很多GUI MySQL客戶程式,其中最為出色的是基於 Web 的phpMyAdmin 工具。這是一種 MySQL資料庫前台的基於PHP的工具。

PhpMyAdmin 的缺點是必須安裝在 Web 伺服器中,所以如果沒有合適的訪問許可權,其它用戶有可能損害到 SQL 數據。

最新版本

1、v4.8.2

2、v4.8.0.1

3、v4.0.9

4、v3.5.8.2

安裝過程

搜尋PhpMyAdmin安裝包下載安裝

解壓

將下載檔案解壓縮到 WEB 訪問路徑下。檔案目錄如phpmyadmin。

配置檔案

然後配置目錄下libraries檔案下的 config.default.php 檔案。

$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin';

$cfg['blowfish_secret'] = '123456';

$cfg['DefaultLang'] = 'zh-gb2312';

$cfg['DefaultCharset'] = 'gb2312';

$cfg['Servers'][$i]['auth_type'] = 'cookie';

保存之後,在瀏覽器里輸入:http://localhost/phpmyadmin/user_password.php

使用

phpMyAdmin

phpMyAdmin 是一個以PHP為基礎,以Web-Base方式架構在網站主機上的MySQL的資料庫管理工具 。

可以管理整個MySQL伺服器(需要超級用戶),也可以管理單個資料庫。為了實現後一種,你將需要合理設定MySQL用戶,他只能對允許的資料庫進行讀/寫。那要等到你看過MySQL手冊中相關的部分。

安裝與配置

目前最新版本是phpMyAdmin 4.1.9。

站點上提供了不同的程式壓縮方式供我們下載,這裡我選擇 bzip2 方式的來下載(因為這種檔案體積小些,下其它格式的也可以)。

下面我們開始對phpmyadmin進行設定。

2、解壓後得到一個目錄,進入相關目錄中的\libraries目錄,找到 config.default.php檔案copy份到上級目錄,並命名為config.inc.php ;

在config.inc.php中

找到 $cfg['PmaAbsoluteUri']

修改你將用於讓虛機用戶訪問的phpMyAdmin的網址

如:$cfg['PmaAbsoluteUri'] = 'http://ip/phpmyadmin/'; 或$cfg['PmaAbsoluteUri'] = 'http://ip:8899' (寫出訪問phpMyAdmin的絕對URL)

還有這些更改的地方:

$cfg['Servers'][$i]['host'] = 'localhost';(通常用默認,也有例外)

$cfg['Servers'][$i]['auth_type'] = 'cookie'; // Authentication method (config, http or cookie based)?

用cookie。因為是網路上使用所以這裡選擇cookie

$cfg['Servers'][$i]['user'] = 'root'; // MySQL user

$cfg['Servers'][$i]['password'] = ''; // MySQL password (only needed自己機里不用設定)

註:$cfg['blowfish_secret'] = '';

本機的話不需要設定,但是網路的話需要設定成cookie:

$cfg['blowfish_secret'] = 'cookie';

設定完畢。

3、打開IE,輸入http://ip/phpmyadmin/(當然你設定不同就用那個網址。),輸入用戶名和密碼後,用phpmyadmin瀏覽相應的mysql資料庫;

如果設定$cfg['Servers'][$i]['auth_type'] = 'cookie'; 所以顯示會要求輸入帳號。

4、$cfg['DefaultLang'] = 'zh'; (這裡是選擇語言,zh代表簡體中文的意思)

登錄MySQL的方式

config

直接在配置檔案中寫入一個能登錄mysql的帳號和密碼,只要瀏覽這個datamgr目錄就可以直接以這個寫入配置檔案的mysql帳號進行管理mysql的操作。特點是方便,缺點是沒有安全性。

phpMyAdmin phpMyAdmin

http利用web伺服器的驗證功能,瀏覽datamgr這個目錄前會跳出一個身份驗證視窗,只要mysql帳號對得上就可以有datamgr目錄的訪問權。這樣比較安全,

不過用 cgi fastcgi 的方式配置php將無法使用該功能,因為cgi不會向伺服器傳送一些驗證信息變數。

cookie

和http一樣也會跳出一個驗證視窗,不過這個不是用web伺服器的驗證功能,直接是php寫的一個普通登錄視窗,只要瀏覽器支持cookie就行,市面上的瀏覽器都應該支持cookie這個基本功能,所以一般選擇cookie驗證方式。

配置詳解

幾乎所有的配置參數都在 config.inc.php檔案中。如果這個檔案不存在,可以在libraries目錄中找到config.default.php,將它複製到 phpmyadmin 目錄,並改名為 config.inc.php。

涉及到界面設計(例如顏色)的參數,存放在 themes/themename/layout.inc.php檔案中。也可以創建 config.footer.inc.php檔案和 config.header.inc.php 檔案來添加站點的自定義代碼,這些代碼顯示在頁眉和頁腳。

$cfg[PmaAbsoluteUri]字元串

這裡填寫phpMyAdmin安裝目錄的完整URL(包括完整的路徑)

phpMyAdmin phpMyAdmin

注意,在某些瀏覽器,URL 是大小寫敏感的。不要忘記結尾處的反斜槓。從2.3.0版本開始,可以嘗試不填這個參數。phpMyAdmin 可以自動檢測到正確的配置。使用連線埠轉向的用戶必須填寫 PmaAbsoluteUri(如果伺服器在防火牆後面,phpMyAdmin將無法載入圖形和樣式表)。

檢測方法是瀏覽一個表,編輯一條記錄並保存,如果phpMyAdmin 無法檢測正確的值,系統將會有錯誤提示。

如果看到錯誤提示,必須手工設定這個參數。

$cfg[PmaNoRelation_DisableWarning]布爾

從2.3.0版本開始,phpMyAdmin 提供了對主/外部數據表的支持(參考 $cfg['Servers'][$i]['pmadb'] 參數)。

如果不能使用這些功能,請查閱某個資料庫的“Structure”頁面。那裡會有一個連線,它會分析這些功能被禁止的原因。

如果不想使用這些功能,將這個參數設定為TRUE,這個信息將不會顯示。

$cfg[blowfish_secret]字元串

從2.5.2版本開始,“cookie”認證方式使用blowfish算法來加密密碼。如果使用“cookie”認證方式,請在這裡輸入一個隨機密鑰,該密鑰在blowfish算法內部使用:

在使用過程中不會提示輸入它。密鑰最大長度為46個字元。

$cfg[Servers]數組

從1.4.2版本開始,phpMyAdmin 可以管理多個MySQL伺服器。

因此,加入了 $cfg['Servers'] 參數,這是一個數組,包括了不同伺服器的登錄信息。

第一個 $cfg['Servers'][$i]['host'] 參數是第一個伺服器的主機名,

第二個 $cfg['Servers'][$i]['host'] 參數是第二個伺服器的主機名,依此類推。

在 libraries/config.default.php檔案里,只有第一個伺服器的定義,

不過仍然可以在 config.inc.php自己添加更多的伺服器,

複製整個塊,或者需要的部分(不需要定義所有的值,只需要那些修改過的參數)。

$cfg['Servers'][$i]['host']字元串

第i個伺服器的主機名或者IP位址,例如localhost。

$cfg['Servers'][$i]['port']字元串

第1個伺服器的連線埠號。默認是3306(可以不填)。

如果主機名是“localhost”,MySQL將無視連線埠號,以socket方式連線。

所以,如果需要連線一個不同的連線埠號,請在 $cfg['Servers'][$i]['host'] 填寫“127.0.0.1”或者真實的主機名。

$cfg['Servers'][$i]['socket']字元串

socket路徑。不填為默認值。

$cfg['Servers'][$i]['connect_type']字元串

與MySQL伺服器的連線方式,可以選擇“socket”或者“tcp”。

默認為“tcp”,這種方式幾乎可以連線所有的MySQL伺服器,而sockets方式不支持某些平台。

要使用socket方式,MySQL伺服器必須和Web伺服器在用一台伺服器。

$cfg['Servers'][$i]['extension']字元串

phpMyAdmin 系統使用的 phpMySQL 擴展:

mysql:經典的MySQL擴展。默認值並推薦MySQL4.0用戶使用。

mysqli:改進的MySQL擴展。包含在php5.0.0以上版本中,推薦MySQL4.1.0以上版本用戶使用。

$cfg['Servers'][$i]['compress']布爾

是否使用壓縮協定來連線MySQL伺服器。

本功能需要PHP4.3.0以上版本。

$cfg['Servers'][$i]['controluser']字元串

$cfg['Servers'][$i]['controlpass']字元串

這個特殊賬戶有2個特殊作用:是的某些相關功能可用(參考$cfg['Servers'][$i]['pmadb']參數);

在低於4.1.2版本,或者“--skip-show-database”參數打開的MySQL伺服器上,打開多用戶功能(需要http或者cookie認證模式)。

如果使用HTTP或者cookie認證模式(或在phpMyAdmin2.2.1以上版本使用“config”認證模式),

需要設立一個MySQL賬戶,該賬戶只有以下表的SELECT許可權:

mysql.user表(除了“Password”欄位的所有欄位),

mysql.db表(所有欄位),

mysql.tables_priv表(除了“Grantor”和“Timestamp”欄位的所有欄位)。

這個賬戶用於檢測登錄用戶可以看到的資料庫。

請查閱文檔的安裝章節的"Usingauthenticationmodes"獲取更多信息。

在2.2.5版本之前的phpMyAdmin,這對參數叫做"stduser/stdpass"。

$cfg['Servers'][$i]['auth_type']字元串['http'|'cookie'|'config']

選擇config、cookie或者http認證。

*'config'認證($auth_type="config")是最簡單的模式,用戶名和密碼存儲在config.inc.php檔案里;

*'cookie'認證模式($auth_type="cookie")2.2.3以上版本允許通過cookie,以任何合法的MySQL用戶登錄。

用戶名和密碼存儲在cookie中,註銷後將刪除密碼。也可以登錄任意的伺服器(需要打開 $cfg['AllowArbitraryServer'] 參數)。

*'http'認證(在老版本叫做'advanced')($auth_type="http")1.3.0以上版本允許您通過HTTP-Auth,以任何有效的MySQL用戶登錄。

請查閱文檔的安裝章節的"Usingauthenticationmodes"獲取更多信息。

$cfg['Servers'][$i]['user']字元串

$cfg['Servers'][$i]['password']字元串

如果auth_type="config",phpMyAdmin將使用這個賬戶來連線MySQL伺服器。

如果您使用HTTP或者cookie認證,請不要填寫這個賬戶。

$cfg['Servers'][$i]['only_db']字元串或數組

如果填寫了某個(或者某組)資料庫,那么登錄用戶將只看到這個(或這些)資料庫。

從phpMyAdmin2.2.1 開始,資料庫名可以使用 MySQL 通配符("_"和"%"):

請用斜槓區分這兩個符號,例如,應當使用'my/_db'而不是'my_db'。

本功能可以有效降低伺服器負載,MySQL伺服器將不會建立可用資料庫的列表。

但本功能不會覆蓋MySQL伺服器的許可權規則,

設定本參數,僅僅表示只顯示這些資料庫,並不是所有顯示出來的資料庫都能被訪問。

多個資料庫的例子

代碼

$cfg['Servers'][$i]['only_db']=array('db1','db2');

從phpMyAdmin2.5.5開始,數組中的順序將被用來作為頁面左邊幀的資料庫顯示順序。因此,可以自己排列資料庫。

如果只希望在列表開頭顯示某幾個資料庫,而不管其他的,那么,不需要指定所有的資料庫。

只需要填寫:

代碼

$cfg['Servers'][$i]['only_db']=array('db3','db4','*');

phpMyAdmin將把db3和db4顯示在開頭,其他的按照默認順序排列。

$cfg['Servers'][$i]['hide_db']字元串

用於隱藏某些資料庫的正則表達式。這些資料庫只是不顯示在列表中,用戶仍然可以訪問他們。

$cfg['Servers'][$i]['verbose']字元串

只有當多伺服器模式時有效。設定以後,本字元串將代替主機名顯示在首頁的下拉選單中。

$cfg['Servers'][$i]['pmadb']字元串

包含連線表結構的資料庫名稱。

詳細情況請查閱文檔的Linked-tablesinfrastructure章節。

如果是phpMyAdmin的唯一用戶,可以使用當前的資料庫來存儲這些特殊的數據,填寫當前資料庫名即可。

如果的phpMyAdmin配置為多個用戶使用,在這裡填寫包含連線表結構的中心資料庫名稱。

$cfg['Servers'][$i]['bookmarktable']字元串

從2.2.0版本開始,phpMyAdmin允許將經常使用的查詢存儲在書籤中。

打開本功能的方法:

*設定 pmadb 以及連線表結構

*在 $cfg['Servers'][$i]['bookmarktable'] 處填寫表名

相關詞條

相關搜尋

熱門詞條

聯絡我們