功能特點 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 資料庫。通過
php MyAdmin 可以完全對資料庫進行操作,例如建立、複製和刪除數據等等。如果使用合適的工具,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安裝包下載安裝
解壓 配置檔案 然後配置目錄下libraries檔案下的 config.default.php 檔案。
$cfg['PmaAbsoluteUri'] = 'http://localhost/
php myadmin';
$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的操作。特點是方便,缺點是沒有安全性。
http 利用web伺服器的驗證功能,瀏覽datamgr這個目錄前會跳出一個
身份驗證 視窗,只要mysql帳號對得上就可以有datamgr目錄的訪問權。這樣比較安全,
phpMyAdmin 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]字元串
注意,在某些瀏覽器,URL 是大小寫敏感的。不要忘記結尾處的
反斜槓 。從2.3.0版本開始,可以嘗試不填這個參數。phpMyAdmin 可以自動檢測到正確的配置。使用連線埠轉向的用戶必須填寫 PmaAbsoluteUri(如果伺服器在
防火牆 後面,phpMyAdmin將無法載入圖形和樣式表)。
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個字元。
從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']字元串
$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擴展。包含在
php 5.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',
php MyAdmin將使用這個賬戶來連線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'] 處填寫表名