瞭解如何在 Adobe Dreamweaver 中設定 MySQL、建立 MySQL 資料庫連線,以及使用 MySQL 公用程式。

本文適用於使用執行 PHP 5x 伺服器的 Dreamweaver Creative Suite 使用者。

如果您使用 Dreamweaver CC,請參閱下列文件以瞭解關於資料庫連線的資訊:

概觀

本文描述在 Dreamweaver 中使用 PHP 伺服器模式時,建立成功的 MySQL 資料庫連線所需的幾個重要因素。也涵蓋一些基本 MySQL 使用者帳戶設定。本文會假設您已在本機或遠端電腦上安裝並設定 MySQL。

如果未正確完成設定,則 Dreamweaver 會發生錯誤。在 Dreamweaver 中測試 MySQL 連線時可能會出現的常見錯誤為「發生無法辨識的錯誤。」

注意: 本內容提供快速入門的基本指南。若要量身打造 MySQL 帳戶設定以切合您的特定安全性需求,請參閱 MySQL 文件及其他協力廠商資源。若要下載和安裝 MySQL,請造訪 MySQL 網站

MySQL 設定

MySQL 資料庫系統的預設安裝含有兩個名為 mysqltest 的資料庫。mysql 資料庫含有六個儲存權限相關資訊的表格。本區段將討論其中兩個表格: user 表格和 db 表格。

user 表格會儲存有關誰可以連線至 MySQL 伺服器,以及該使用者是否具有任何全域等級權限等資訊。因為 user 表格中的權限會影響 MySQL 伺服器上的所有資料庫,因此管理員的權限欄位中通常會有一些 Y (yes),而多數標準使用者只會有 N (no)。db 表格會指定 MySQL 伺服器上允許使用者存取的資料庫,而且此表格是大部分標準使用者權限的儲存位置。

注意: 許多協力廠商的圖形介面公用程式可協助您從視覺上管理 MySQL 資料庫,不過,本文則使用原生的 MySQL 命令列用戶端。

無論您在 UNIX、Windows 或是 Mac OS X 機器上安裝 MySQL,您都可以透過命令提示視窗來管理 MySQL。在 Windows 中,選擇「開始 > 程式 > 命令提示字元」。(在某些系統上,命令提示字元可能位於「開始 > 程式功能表」的「附屬應用程式」中。)

在命令提示字元中輸入以下命令以變更到 mysql\bin 目錄:

> cd\> cd mysql\bin

在 MySQL 安裝期間,MySQL 會建立名為 root 的無密碼帳戶,該帳戶可用來登入資料庫。Adobe 強烈建議為此帳戶指派密碼,因為 root 對 MySQL 資料庫有完整控制權限。若要為 root 帳戶指派密碼,請執行以下命令,將 root 密碼設定為 new-password。選擇一個較為安全的密碼以取代「new-password」。

> mysqladmin -u root password new-password

為各個 PHP Web 應用程式建立 MySQL 帳戶。您可以建立無限數量的 MySQL 帳戶,並為各個帳戶指ˇ派不同的權利和權限。網路應用程式使用者不需要與 root 帳戶相同等級的權限。

若要為您的網路應用程式建立單獨的使用者帳戶,請連線到 MySQL,並透過以下其中一種方法使用進階使用者帳戶登入:在下方範例中,具有進階使用者權限的帳戶是 root 帳戶。MySQL 會在您按 Enter 鍵時提示您輸入密碼:

> mysql --user=root --password

> mysql -uroot -p

登入 MySQL 後,您會為網路應用程式建立名為 dbuser (可任意命名) 的使用者。以下為設定此類新使用者的四種範例方法。在這四個範例中,會建立名為 dbuser 的新使用者。授予此使用者的四個權限為 SELECTINSERTUPDATE 以及 DELETE,可在 employ es 資料庫內的任何表格上使用 (此資料庫在以下範例中稱為 emp)。密碼 myPassword 在 MySQL 資料庫中會加密。

  • 在此範例中,dbuser 若要存取資料庫,只能透過 localhost:
    GRANT SELECT, INSERT, UPDATE, DELETE ON emp.* TO dbuser@localhost IDENTIFIED BY "myPassword";
  • 在此範例中,dbuser 若要存取資料庫,只能透過 mySite:
    GRANT SELECT, INSERT, UPDATE, DELETE ON emp.* TO dbuser@mySite IDENTIFIED BY "myPassword";
  • 在此範例中,dbuser 若要存取資料庫,只能透過 mySite.myDomain.com:
    GRANT SELECT, INSERT, UPDATE, DELETE ON emp.* TO dbuser@mySite.myDomain.com IDENTIFIED BY "myPassword";
  • 在此範例中,dbuser 可從任何主機存取資料庫:
    GRANT SEL CT, INSERT, UPDATE, DELETE ON emp.* TO dbuser@"%" IDENTIFIED BY "myPassword";

執行 GRANT 陳述式後,請執行以下命令,從 emp 資料庫切換回 mysql 資料庫:

>use mysql

若要觀察主 mysql 資料庫的 db 資料表有何變更,請執行下列 SQL 陳述式:

SELECT Host, Db, User, Select_priv, Insert_priv,    Update_priv, Delete_priv   FROM db   WHERE User='dbuser';

如果您執行上列所有 GRANT 陳述式,則 db 資料表會顯示如下:

主機 Db 使用者 Select_

priv
Insert_

priv
Update_

priv
Delete_

priv
localhost emp dbuser Y Y Y Y
mySite emp dbuser Y Y Y Y
mySite.

myDomain.com
emp dbuser Y Y Y Y
% emp dbuser Y Y Y Y

若要觀察主 mysql 資料庫的 user 資料表有何變更,請執行下列 SQL 陳述式:

SELECT Host, User, Select_priv, Insert_priv,    Update_priv, Delete_priv   FROM user   WHERE User='dbuser';

如果您執行上列所有 GRANT 陳述式,則 user 資料表會顯示如下:

主機 使用者 Select_

priv
Insert_

priv
Update_

priv
Delete_

priv
localhost dbuser N N N N
mySite dbuser N N N N
mySite.

myDomain.com
dbuser N N N N
% dbuser N N N N

注意: 為了安全起見,請勿修改user 資料表中的 dbuser 帳戶,除非該帳戶需要類似 root 或 MySQL 管理員帳戶的管理員權限。如果您獲得這些權限,dbuser 便可以存取系統資料庫。

MySQL 會在啟動時以及發佈 GRANTREVOKE 陳述式時自動讀取 user 和 db 表格。如果您對 userdb 表格進行任何手動變更,請使用此命令重新載入表格以處理變更:

> flush privileges;

在 Dreamweaver 中設定 PHP/MySQL 網站定義

在 Dreamweaver 中是否能成功連線到 MySQL 資料庫取決於定義網站時的正確網站定義項目。以下是在識別為 mySite.myDomain.com 的機器上執行使用 Linux PHP 伺服器的 PHP/MySQL 網站定義範例。MySQL 在另一部識別為 mysql1.mDomain.com 的機器上執行,而 Dreamweaver 則在本機工作站上執行。FTP 是用來在工作站和 Linux 網頁伺服器之間傳輸檔案。

  • 本地資訊:
    • 網站名稱: mySite
    • 本機根資料夾: C:\mySite\
  • 遠端資訊:
    • 存取: FTP
    • FTP 主機: mySite.myDomain.com
    • 主機目錄: /htdocs/
    • 登入: webadmin
    • 密碼: *********
  • 測試伺服器:
    • 伺服器模式: PHP/MySQL
    • 存取: FTP
    • FTP 主機: mySite.myDomain.com
    • 主機目錄: /htdocs/
    • 登入: webadmin
    • 密碼: *********
    • URL 首碼: http://mySite.myDomain.com/

在 Dreamweaver 中建立 MySQL 資料庫連線

只要設定 MySQL 使用者帳戶並定義網站,您便可在 Dreamweaver 中連線到 MySQL 資料庫。使用以上設定,以下為 Dreamweaver 中「MySQL 連線」對話方塊的範例設定:

連線名稱: 選擇一個名稱 (例如 connEmp)
MySQL 伺服器: mysql1.myDomain.com
使用者名稱: dbuser
密碼: myPassword
資料庫: 鍵入資料庫名稱,或按一下「選取」從伺服器上執行的 MySQL 資料庫清單進行選擇。

注意: 如果 PHP 和 MySQL 在相同機器上執行,您必須在「MySQL 伺服器」欄位中鍵入 localhost。

MySQL 公用程式

第三方工具可協助您在不瞭解 SQL 的情況下設定和管理 MySQL 資料庫。如果您偏好透過視覺化介面來使用資料庫,而非使用命令列介面,這些工具就相當有幫助。您可以透過執行 MySQL 資料庫的機器或本機工作站下載和安裝這些工具。一些受歡迎的工具包括 PHPMyAdminEMS MySQL ManagerurSQL 以及 PremuimSoft MySQL Studio

此産品由 Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License 授權  Creative Commons 條款未涵蓋 Twitter™ 與 Facebook 文章。

法律說明   |   線上隱私權政策