ch12 phpMyAdmin使用環境教學投影

Download Report

Transcript ch12 phpMyAdmin使用環境教學投影

Chapter 12
phpMyAdmin
使用環境介紹
phpMyAdmin是用 PHP 程式寫成的管理MySQL 資料庫的管理軟體
。透過它可以在 WWW 上進行MySQL的資料庫異動、表格的內容
維護、使用者權限…等操作。
在上一章我們已學習到如何在 MySQL 下包括 Create Database、
Create Table、Insert、Delete、Update …等的 SQL 語法指令。
而這一章將會介紹如何在 phpMyAdmin的操作環境下完成與上述
指令相同的工作。
開始
離開
*教科書投影片同教科書受著作權保護,僅供教師作為授課用途。學校教師得使用投
影片,於授課期間,搭配用書進行教學;由於投影片極易重製、列印、出版,為避免
第三人(含學生)因不知情而發生侵權行為,請支持與協助不將教學投影片以任何型
式移轉予第三人使用。如有特殊需求,請向出版社申請授權協議。
目錄
12-1
12-2
12-3
12-4
12-5
12-6
12-7
12-8
12-9
phpMyAdmin 操作環境
設定使用者權限
建立資料庫與表格
修改表格結構和定義
新增表格資料
新增表格資料
修改/刪除表格資料
備份資料庫
刪除表格與匯入資料庫
回章首
上一頁
下一頁
離開
12-1 phpMyAdmin 操作環境
在安裝完AppServ 時,如果指定的安裝目錄是 C:\AppServ,那麼
phpMyAdmin 將會安裝到 C:\AppServ\www\phpMyAdmin 目錄下。
如果在Apache 的設定檔案:“httpd.conf”中,將
“DOCUMENT_ROOT”網站主目錄設為C:\AppServ\www,那麼只
要在瀏覽器的網址中輸入 http://localhost/phpMyaAdmin/ ,就會自動
開啟 C:\AppServ\www\phpMyAdmin\index.php 程式。
登入 phpMyAdmin 有三種認證方式:“http”、“cookie”和
“config”。其中“config ”是直接將資料庫的帳號、密碼儲存於
C:\AppServ\www\phpMyAdmin\config.inc.php 設定檔案中。在第73
行到75行的位置,要將 $cfg['Servers'][$i]['auth_type'] 的設定改為 :
‘config’,$cfg['Servers'][$i]['user'] 則是在設定登入帳號,而
$cfg['Servers'][$i]['password'] 則是登入密碼。
剛開始還沒增設phpMyAdmin的其它使用者,所用的登入使用者是
root,密碼則要自行改為在安裝 AppServ 時為 MySQL 所設的管理
者密碼。這樣在“config ”的模式下就可以不需要每次都輸入帳號與
密碼。
下一節
上一頁
下一頁
回目錄
12-1 phpMyAdmin 操作環境
但是,以上“config”這種方式有安全上的疑慮,通常不建議使用。
至於“http”的方式則是設為 $cfg['Servers'][$i]['auth_type'] = 'http';,
這是安裝完後的預設狀態。在每次登入 phpMyAdmin時,要輸入登入
的帳號和密碼,登入畫面如下:
下一節
上一頁
下一頁
回目錄
12-1 phpMyAdmin 操作環境
而“cookie”的方式和“http” 的方式的結果主要差別在登入畫面長的不一樣
而已。若要設為“cookie”的方式則要改設為 $cfg[‘Servers’][$i][‘auth_type’] =
‘cookie’;,並在 $cfg[‘blowfish_secret’] 給予一個任意值,最長可為 46 個字元。
此亂數值將會用 blowfish 演算法,
利用$cfg[‘blowfish_secret’] 所設
的值將使用者登入時輸入的密碼
進行加密,例如:
$cfg[‘blowfish_secret’] =
‘8ai8g93gihka10b’; 。“cookie”
模式的登入畫面如右:
下一節
上一頁
下一頁
回目錄
12-1 phpMyAdmin 操作環境
不管經由何種方式登入之後,將顯示 phpMyAdmin的系統操作首頁畫
面如下:
下一節
上一頁
下一頁
回目錄
12-1 phpMyAdmin 操作環境
在 phpMyAdmin首頁點選“phpMyAdmin wiki”,可以進入維基(Wiki)
百科中有關 phpMyAdmin 的參考說明手冊。
下一節
上一頁
下一頁
回目錄
12-1 phpMyAdmin 操作環境
另外,還可以從 phpMyAdmin首頁上點下“phpMyAdmin 說明文件”
和“phpMyAdmin 官方網站”的超連結,找到許多phpMyAdmin 相
關的使用資訊。
下一節
上一頁
下一頁
回目錄
12-2 設定使用者權限
本書所下載的 AppServ 套件版本在安裝時,便需要輸入MySQL 的管
理者密碼,若空白則安裝過程無法繼續。所以MySQL的管理者密碼
剛開始就不是空白,在登入 phpMyAdmin 時,得要輸入root 的正確
密碼才能進入。
但若讀者下載的版本允許 MySQL 的管理者密碼是空白的,建議要先
更改密碼的設定,不要讓密碼是空白的,以免將來造成系統的漏洞。
現在,來看看要如何修改 phpMyAdmin 的使用者,包括管理者與一
般使用者的密碼與權限。
下一節
上一頁
下一頁
回目錄
12-2 設定使用者權限
在 phpMyAdmin 畫面中點選「權限」鈕,即可開啟“使用者一覽”
的畫面。
Step1:在 phpMyAdmin 畫面中點選「權限」鈕,即可開啟“使用
者一覽”的畫面。
下一節
上一頁
下一頁
回目錄
12-2 設定使用者權限
Step2:在“使用者一覽”的清單中,選取 root 在“ localhost ”主機的那一
列,按下鈕 編輯權限。
可以看到 root 不止在“ localhost ”上,它在127.0.0.1 上和
production.mysql.com 上也有不同的權限設定 。若MySQL 資料庫是
置於本機上管理時,則要設定主機是在“ localhost ”的權限。
下一節
上一頁
下一頁
回目錄
12-2 設定使用者權限
Step3:如果你的 root 密碼是空白的,則請在“更改密碼”的區域點選“密
碼”。輸入“密碼”,並“確認密碼”後,再按 ,便設定好了
root 的密碼。
可以看到 root 不止在“ localhost ”上,它在127.0.0.1 上和
production.mysql.com 上也有不同的權限設定 。當MySQL 資料庫置
於遠端主機上交由外面軟體公司代管時,便需另外設定在不同主機
上的密碼。若MySQL 資料庫是置於本機上管理時,則要設定主機是
在“ localhost ”的權限。
下一節
上一頁
下一頁
回目錄
12-2 設定使用者權限
每當在phpMyAdmin 上做異動,包括更改權限或新增表格資料…等
操作時,完成後都會出現它所執行的對應 SQL 語法。
修改root 的密碼後,下次再進 phpMyAdmin 時,就要輸入在此所設
定的密碼了。
下一節
上一頁
下一頁
回目錄
12-2 設定使用者權限
Step4:接下來要新建一個新的使用者,讓它有部份操作資料庫的權限。在
畫面上點選“新增使用者”的連結。
Step5:在 “登入資訊”的區塊中,分別輸入新增使用者名稱、主機、密碼
和確認密碼。
下一節
上一頁
下一頁
回目錄
12-2 設定使用者權限
Step6:在“整體權限”區塊中,可以勾選要開放給這位新增使用者哪些權
限。以下開放了可以 SELECT、INSERT 、UPDAT E、DELETE 表
格資料的權限,還有可以 CREATE、ALTER、INDEX、DROP 表
格以及 CREATE、SHOW 檢視(View) 的權限。
有需要可點選“全選”或“全部取消”將下方的權限全都選取或取消再慢
慢修改權限的勾選狀態。
下一節
上一頁
下一頁
回目錄
12-2 設定使用者權限
Step7:完成後再按 確定設定,SQL 語法顯示新增了一個使用者,並授權
(Grant) 給這個新帳號許多權限。
在 “使用者一覽”的清單中也可看到新設的使用者和權限。
下一節
上一頁
下一頁
回目錄
12-2 設定使用者權限
Step8:之後該位使用者可用新增的使用者帳號登入 phpMyAdmin ,方便權
限控管。
用新的使用者帳號登入
下一節
上一頁
下一頁
回目錄
12-3 建立資料庫與表格
在 phpMyAdmin 畫面的最左邊,有個“資料庫”的下拉式方塊。按下下
拉式方塊,會顯示目前系統中所有的資料庫名稱,而後面用小括號括起
來的數字,就是該資料庫裡已有的資料表格 (table) 個數。用滑鼠點選
一個資料庫,就會把作用中的資料庫切換到該資料庫。這個動作就相當
於在MySQL 裡用“Use”指令來切換作用中的資料庫一樣 。
下一節
上一頁
下一頁
回目錄
12-3 建立資料庫與表格
現在讓我們來自己動動手建立一個新的資料庫吧!
Step1:在phpMyAdmin 的首頁中點選“資料庫”連結。如果你在
phpMyAdmin 的畫面中逛來逛去已迷失方向,就先按 鈕回到首頁
來再接著操作。
Step2:在“資料庫”面板,看到幾個系統中已有的內建資料庫:mysql、
phpmyadmin 和 test。這個清單跟剛才我們在畫面最左邊看到的所
有資料庫清單是一樣的。在下方建立新資料庫的地方輸入新資料庫
的名稱:“sales”,再按
。
下一節
上一頁
下一頁
回目錄
12-3 建立資料庫與表格
Step3:畫面會顯示資料庫 sales 已經建立的訊息,而最左邊的資料庫清單
也自動切換到剛建好的“sales” 資料庫。
緊接著想馬上在剛建好的“sales”資料庫中建立表格。在下方“建
立新資料表於資料庫 sales”的地方,“名稱”欄位中輸入:
“salesman”,欄位數目輸入:“3”,再按
。
下一節
上一頁
下一頁
回目錄
12-3 建立資料庫與表格
Step4:因為剛才在欄位數目的地方是輸入3,所以會自動產生三行空白列,供輸
入三個欄位的欄位定義。這個“salesman”資料表格是業務員的個人資
料主檔。參考下列畫面設定三個欄位的名稱、資料型態、長度、屬性及
預設值。
因為希望每次新增一筆記錄時,系統會自動為 salesid 欄位每次遞增 1 做為編
號,所以在“附加”的地方加了 “auto_increment”的設定。另外,第
一個欄位 salesid 是整個表格的主鍵,所在也為這個欄位點選了 。
主鍵 (Primary Key)
下一節
上一頁
下一頁
回目錄
12-3 建立資料庫與表格
Step5:若覺得剛開始選3 個欄位不夠,這時可以直接在右下角的“新增 1 個欄
位”的地方改成還要加幾個欄位,再按
。
例如,要再增加一個欄位:birthdate,型態是 Date。會先在最後加入一行空白
列,再填入新增欄位的定義。
下一節
上一頁
下一頁
回目錄
12-3 建立資料庫與表格
Step6:當表格內所有要建立的欄位都定義好了,再按 ,畫面會顯示
Table 的SQL 語法,下方也會有資料表的結構。
下一節
上一頁
下一頁
Create
回目錄
12-3 建立資料庫與表格
注意此時 phpMyAadmin 左邊的資料庫清單中,“sales”資料庫下多了
“salesman”資料表格,“sales(1) ”表示“sales” 資料庫裡目前有 1
個資料表格。
下一節
上一頁
下一頁
回目錄
12-3 建立資料庫與表格
如果要為已存在的資料庫新增資料表格,操作步驟如下:
Step1:先切換目前的資料庫到
“sales”資料庫。可
以從phpMyAdmin 最
左邊的資料庫中直接選
取“sales”:
也可以從首頁中點選“資料
庫”連結,然後雙擊滑
鼠點選要切換的資料庫。
下一節
上一頁
下一頁
回目錄
12-3 建立資料庫與表格
Step2:在“建立新資料表於資料庫 sales”的地方輸入要再新
建的表格名稱,接下來的步驟就與前面介紹的一樣了,
不再贅述。
切換到 sales 資料庫”了
下一節
上一頁
下一頁
回目錄
12-3 建立資料庫與表格
Step3:請讀者自行練習,建立兩個資料表格:salesreport 和
product,其結構如下:
salesreport:
product:
下一節
上一頁
下一頁
回目錄
12-4 修改表格結構和定義
當表格建立好之後,往往會有很多機會需要回頭再修改當初的欄位定
義,譬如:新增欄位、修改欄位名稱、資料長度、要加設欄位屬性…
等等。
不用擔心,只要回到資料庫裡修改表格的結構就可以修改表格的各種
欄位結構和屬性的定義。
現在要修改 “product”表格,將 “prodno ”欄位設為主鍵,還有將
“unit”文字欄位長度由 4 個位元組改為 6 個位元組 。
Step1:將目前的資料庫切換到“sales”。
按下“product”資料表那一列的結構鈕
鈕
。
下一節
上一頁
或上方的結構
下一頁
回目錄
12-4 修改表格結構和定義
Step2:畫面上會顯示“product”資料表的所有欄位和它的定義。按
下“prodno ” 欄位那一列的主鍵鈕
。
接著會出現下列視窗提醒是否要執行將“prodno ”欄位設定
為 Primary Key 的動作。按 ,它會執行 Alter Table 的SQL指
令。
下一節
上一頁
下一頁
回目錄
12-4 修改表格結構和定義
完成後在左下角的索引區塊,會顯示PRIMARY 及所用的欄位
“prodno”。
下一節
上一頁
下一頁
回目錄
12-4 修改表格結構和定義
Step3:接下來要改 “unit”欄位的資料型態。按下“unit”欄位那一
列的修改鈕。
Step4:畫面上將出現“unit”欄位目前的型態是 VARCHAR,長度是
“4”個位元組。現在將它改成 “6” 個位元組,再按 就大功
告成了。
下一節
上一頁
下一頁
回目錄
12-4 修改表格結構和定義
回表格結構時,可以看到型態已改為 varchar(6) 了
如果要新增表格裡的欄位, 則可以在目前表格的欄位定義下方,
輸入要新增幾個欄位,還可指定新增的欄位要加在哪個欄位的
後面。若沒有指定則是放在最後的欄位之後。
可指定要加在哪個欄
位之後
要刪除表格裡的欄位,則要按刪除鈕
下一節
上一頁
。
下一頁
回目錄
12-5 新增表格資料
當表格的結構已建立完成,就可以新增表格的內容了。
Step1:從phpMyAdmin首頁最左邊切
換到資料庫“sales”,然後
雙擊“sales”資料庫下方的
“product”,這樣就會將目
前處理的資料表格切換到
“product” 資料表格了。
Step2:這個畫面顯示了“product”
資料表格的結構。按
鈕,進入輸入每個欄位資料
值的畫面。
下一節
上一頁
下一頁
回目錄
12-5 新增表格資料
當表格的結構已建立完成,就可以新增表格的內容了。
Step3:如以下畫面,填入每個欄位的“值”,再按
在這裡為新增的空白
記錄輸入每個欄位值
下一節
上一頁
下一頁
回目錄
12-5 新增表格資料
執行完成後,會顯示它所執行的 Insert 指令。
下一節
上一頁
下一頁
回目錄
12-5 新增表格資料
Step4:按
鈕,即可顯示目前表格中所有的資料記錄。目前
“product” 資料表格裡只有一筆剛才所新增的資料記錄。
下一節
上一頁
下一頁
回目錄
12-5 新增表格資料
Step5:下一節將介紹如何自行下連結表格的 SQL 指令來查詢資料庫
內容。請您現在先做個練習,在“product”資料表格中再建幾
筆記錄,並將另外兩個表格的資料也建立起來如下:
product:
salesreport:
salesman:
下一節
上一頁
下一頁
回目錄
12-6 查詢表格資料
上一節在介紹新增表格資料時,我們已經有用瀏覽鈕
來顯示
目前所在的資料庫表格的所有資料記錄。這一節中我們將用別的方式,
直接下 SQL指令,將“sales”資料庫的三個表格資料連結起來。
Step1:一樣先將作用的資料庫切換到“sales” 資料庫。按下SQL
鈕。
下一節
上一頁
下一頁
回目錄
12-6 查詢表格資料
Step2:在文字視窗中輸入以下 SQL 指令:
SELECT selldate, salesreport.salesid, salesreport.prodno,
description, qty, unit, salesname, title, birthdate
FROM salesreport, product, salesman
WHERE salesreport.salesid = salesman.salesid
AND salesreport.prodno = product.prodno
這個 SQL 指令會將銷售記錄、銷售員的個人資料和產品資訊給連結
起來。
下一節
上一頁
下一頁
回目錄
12-6 查詢表格資料
Step3:按
下:
鈕執行上述 SQL 指令之後,將出現資料查詢結果如
SQL 查詢結果
下一節
上一頁
下一頁
回目錄
12-7 修改/刪除表格資料
要修改表格裡某筆資料記錄的欄位值,或刪除一整筆資料記錄,方法
其實很簡單。一切還是要先切換到那個表格再進行操作就對了。現在,
要試著將儲存業務員主檔資料的“salesman”表格做一些異動。
Step1:雙擊“sales”資料庫的
下“salesman”,以便
切換到“salesman”表
格的結構畫面。
Step2:在“salesman”表格的
結構畫面中,按瀏覽鈕
檢視目 前表格
中所有的資料 。
下一節
上一頁
下一頁
回目錄
12-7 修改/刪除表格資料
Step3:在要修改的第一筆業務
員的記錄上,按下編輯
鈕 。
Step4:畫面中顯示該筆業務員
的目前所有欄位的資料
值。將“title”欄位的值
由“業務專員”改成
“業務經理” 。
下一節
上一頁
下一頁
回目錄
12-7 修改/刪除表格資料
Step5:按下執行鈕 確認修改後,
將會執行 Update 的
SQL 指令。
當自動回到瀏覽表格所
有資料的畫面後,可以
看到張一中的職稱已成
功改成“業務經理”了。
Step6:現在要將“侯小莉”從
業務員資料中刪除。很
簡單,按下在“侯小莉”
那一列的刪除鈕 。
下一節
上一頁
下一頁
回目錄
12-7 修改/刪除表格資料
螢幕上會出現確認訊息,
是否要執行“ Delete
From ”的 SQL 指令,
按 執行這個刪除記錄的
動作。
刪除一筆記錄之後,表
格裡只剩下三筆記錄了。
“侯小莉”的
那一筆記錄
已經從表格
中刪除了
下一節
上一頁
下一頁
回目錄
12-8 備份資料庫
為了避免系統資料因為異常情況的發生而造成損毁,系統管理者最好
要定期將資料庫的內容備份(Backup)起來。phpMyAdmin可以將
MySQL資料庫的內容備份起來。
可以一次備份整個資料庫所有表格,或者是一次只備份一個表格。
接下來將示範如何備份整個“sales”資料庫內的所有表格:
Step1:先切換到“sales” 資料庫。按下輸出鈕
下一節
上一頁
。
下一頁
回目錄
12-8 備份資料庫
Step2:因為是選 “sales”
資料庫,在畫面左
上方的“輸出”區
域,預設情況下會
將該資料庫裡所有
表格名稱選取,若
不需備份某個表格
可以將該表格取消
選取。輸出的形式
則用預設的
“SQL”選項。
下一節
上一頁
下一頁
回目錄
12-8 備份資料庫
Step3:因為是用下載儲存的方
式,接下來會出現檔案
下載的對話窗。按儲存
鈕
。
指定好儲存的目錄與檔案名稱
後,按
鈕。
下一節
上一頁
下一頁
回目錄
12-8 備份資料庫
儲存完成後,可以用文字編輯軟體打開剛剛儲存的檔案,可以看到剛
才輸出資料庫的動作,其實就是將要建立目前資料庫內容的 Create
Table、Insert Into…等 SQL 指令自動產生出來。
之後匯入時就是要執行這些 SQL 指令。
下一節
上一頁
下一頁
回目錄
12-9 刪除表格與匯入資料庫
這一節將練習如何先將“sales” 整個資料庫的所有表格先刪除掉,再
進行資料匯入。也可以不刪除現有表格或表格內容,若之前匯出時勾
選了“Add IF NOT EXISTS”選項,這樣在將資料匯入回資料庫時,
只有和現有資料庫不同的資料才會被加入資料庫中。
Step1:先切換到“sales”資料庫,
在要刪除的資料表那一
列上按刪除鈕 ,即可刪
除該資料表格。
逐一將每個資料表格都刪除。
資料庫中的所有表
格都被刪除了
上一節
上一頁
下一頁
回目錄
12-9 刪除表格與匯入資料庫
Step2:確認目前作用中的資料
庫是“sales”(即要先
Use 該資料庫),按下載
入鈕
,這樣載入
的資料才會匯入“sales”
資料庫。
Step3:接著指定要用哪個來源
檔案來匯入資料。按瀏覽
鈕
選取該檔案
的位置。
上一節
上一頁
下一頁
回目錄
12-9 刪除表格與匯入資料庫
選取之前匯出所儲存的
“sales.sql”檔案做為匯入的
來源檔案。
再按開啟舊檔鈕
。
上一節
上一頁
下一頁
回目錄
12-9 刪除表格與匯入資料庫
Step4:確定選取了正確的匯入
檔案。
最後再按執行鈕
進行匯入。
開始
上一節
上一頁
下一頁
回目錄
12-9 刪除表格與匯入資料庫
Step5:匯入完成後,會顯示它所執行的 SQL 指令。
上一節
上一頁
下一頁
回目錄
12-9 刪除表格與匯入資料庫
再查詢一次“sales”
資料庫,三個表格
已重新匯入。
另外,原來表格裡
的資料也補回去了。
表格裡的資料回來了
上一節
上一頁
回目錄