主机
了解如何在 Adobe Dreamweaver 中配置 MySQL、创建 MySQL 数据库连接和使用 MySQL 实用程序。
本文档适用于 Dreamweaver Creative Suite 用户(使用运行 PHP 5x 的服务器)。
如果您使用的是 Dreamweaver,请参阅以下文档了解有关数据库连接的信息:
概述
此文档介绍在 Dreamweaver 中使用 PHP 服务器模型时,创建成功的 MySQL 数据库连接过程中涉及的一些重要因素。它还介绍了一些基本的 MySQL 用户帐户设置。本文假定您在本地或远程计算机上安装和配置了 MySQL。
如果设置并非完全正确,则 Dreamweaver 会出现错误。在 Dreamweaver 中测试 MySQL 连接时可能发生的一个常见错误是“发生了无法识别的错误”。
注意:此内容提供基本的入门指南。若要定制 MySQL 帐户设置以符合您的特定安全要求,请参考 MySQL 文档及其他第三方资源。要下载并安装 MySQL,请访问 MySQL 网站。
MySQL 配置
MySQL 数据库系统的默认安装包含两个数据库,名称分别为 mysql 和 test。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 帐户,并为每个帐户分配不同的特权和权限。Web 应用程序用户无需与 root 帐户具有相同级别的权限。
要为 Web 应用程序创建单独的用户帐户,请连接到 MySQL 并通过下列方法之一以超级用户帐户身份登录。在下面的示例中,具有超级用户权限的帐户是 root 帐户。当您按 Enter 时,MySQL 会提示您输入密码:
> mysql --user=root --password
或
> mysql -uroot -p
登录 MySQL 后,您将为 Web 应用程序创建名为 dbuser(名字可以任意取)的用户。下面的四个示例说明了设置此新用户的方式。在所有四个示例中,将创建名为 dbuser 的新用户。授予此用户的四个权限是针对 employees 数据库(在下面的示例中此数据库被称为 emp)中所有表的 SELECT、INSERT、UPDATE 和 DELETE 权限。密码 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 SELECT, 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_ |
Insert_ |
Update_ |
Delete_ |
localhost |
emp |
dbuser |
Y |
Y |
Y |
Y |
mySite |
emp |
dbuser |
Y |
Y |
Y |
Y |
mySite. |
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_ |
Insert_ |
Update_ |
Delete_ |
localhost |
dbuser |
N |
N |
N |
N |
mySite |
dbuser |
N |
N |
N |
N |
mySite. |
dbuser |
N |
N |
N |
N |
% |
dbuser |
N |
N |
N |
N |
注意:出于安全考虑,请不要修改 user 表中的 dbuser 帐户,除非该帐户需要具有与 root 或 MySQL 管理员帐户相似的管理权限。如果您授予这些权限,dbuser 将拥有系统数据库的访问权限。
MySQL 在启动时和发出 GRANT 和 REVOKE 语句时会自动读取 user 和 db 表。如果对 user 和 db 表进行了任何手动更改,请使用以下命令重新加载表以处理这些更改:
> flush privileges;
在 Dreamweaver 中设置 PHP/MySQL 站点定义
能否在 Dreamweaver 中成功连接到 MySQL 数据库取决于定义站点时站点定义条目是否正确。下面提供了一个 PHP/MySQL 站点定义示例,它使用在名为 mySite.myDomain.com 的计算机上运行的 Linux PHP 服务器。MySQL 在名为 mysql1.myDomain.com 的另一计算机上运行,Dreamweaver 在本地工作站上运行。在工作站和 Linux Web 服务器之间使用 FTP 传输文件。
- 本地信息:
- 站点名称: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 实用程序
第三方工具可以帮助您配置和管理 MySQL 数据库,而无需了解 SQL。如果您喜欢使用直观界面而非命令行界面来处理数据库,这些工具很有帮助。您可以在运行 MySQL 数据库的计算机或本地工作站上下载并安装这些工具。一些主流工具包括 PHPMyAdmin、EMS MySQL Manager、urSQL 和 PremiumSoft MySQL Studio。