《php程序设计简明教程(DOC格式)》第21章


作用是对用户发出的命令进行语法检查,检查无误,向服务器提交这些命令请求,接受和向用户返回服务器执行 
的结果反馈信息;检查中若发现用户发出的命令不合法,则拒绝向服务器提交命令,同时返回出错信息。
mysql。exe 是在MS…DOS 或命令提示符下使用的一种客户端工具,通过命令的方式操纵服务器。
PHP 讲义 第 58 页 共 90 页
…………………………………………………………Page 59……………………………………………………………
图 MySQL数据库管理系统中的C/S结构
注意:mysql。exe 可以安装在远程主机上,不一定必须和服务程序在一起。
以下说明的前提:安装了MySQL,启动了服务程序。若这部分工作没有做,参考第一章第三节实验中有关内容 
现行完成准备工作。
(1)登录和注销
登录:通过客户端程序mysql。exe 与服务器程序建立信任连接。
建立连接时,需要提供客户机名,用户名,密码等参数,经服务器验证通过后,会返回成功建立连接的信息,表 
明连接成功。
启动客户端程序mysql。exe:在命令提示符或MS…DOS 下,进入d:mysqlbin,键入命令mysql 回车。
若出现类似如下结果:
Wele to the MySQL monitor。 mands end with ; or g。
Your MySQL connection id is 26 to server version: 3。23。43
Type "help;" or "h" for help。 Type "c" to clear the buffer。
mysql》
则表明连接成功。
mysql 命令的完整形式是:
mysql –h servername –u username –p
参数说明:
…h 指明主机,省略此参数,则默认为 localhost
localhost,MySQL 服务器,在服务器看来,它所在的机器就是localhost,即本地机。
…u 指明用户名(账号)
…p 使用密码
上面键入的命令mysql 后面不带任何参数,这是因为MySQL 安装完毕后,系统数据库mysql 中的权限表user 
中,存在默认的空帐号、无密码的超级用户,因此可以从远程主机使用mysql。exe 匿名访问服务器主机。
注销:即断开当前与服务器的连接,键入exit 回车即可。
注意:
“命令+参数;”是命令语句行的一般形式。
在mysql。exe 环境下,使用的命令不区分大小写。
命令的末尾必须带语句结束符——分号,以便让mysql。exe 正确区分、解释、执行一个完整的语句。
(2 )数据库操作
〃Y 创建数据库
基本句法:CREATE DATABASE db_name;
db_name 是要创建的数据库的名字。
该语句执行成功后,会在服务器的 MySQL 数据目录(即 MySQL 安装目录下的data 目录)下面创建一个名 
为db_name 的目录。
PHP 讲义 第 59 页 共 90 页
…………………………………………………………Page 60……………………………………………………………
〃Y 查看有哪些数据库
基本句法:SHOW DATABASES;
〃Y 打开数据库(选定数据库)
基本句法:USE db_name;
若要对表进行查询,修改,删除等操作,必须先打开数据库。
〃Y 删除数据库
基本句法:DROP DATABASE 'IF EXISTS' db_name;
DROP DATABASE 删除数据库中的所有表和数据库。要小心地使用这个命令。
DROP DATABASE 返回从数据库目录被删除的文件的数目。通常,这3 倍于表的数量,因为每张表对应于一 
个“。myd”文件、一个“。myi”文件和一个“。frm”文件。
文件 作用
tbl_name。frm 表定义(表格)文件
tbl_name。MYD 数据文件
tbl_name。MYI 索引文件
(3)表操作
〃Y 创建表
基本句法:CREATE TABLE table_name(列1 定义,列2 定义,…,列n 定义);
〃Y 查看有哪些表
基本句法:SHOW TABLES;
〃Y 查看表结构
DESCRIBE table_name;
〃Y 查看表中数据
SELECT 列FROM table_name 'WhERE 条件子句' 'GROUP 分组子句' 'ORDER 条件子句';
〃Y 修改表中数据
UPDATE table_name SET 列=新值 'WhERE 条件子句
〃Y 删除表中数据
DELETE FROM table_name 'WhERE 条件子句
(3)权限操作
进行权限操作的帐户必须有进行此类操作的权限。
GRANT 权限列表 ON db_name。 table_name TO 〃username〃@ 〃host〃 'IDENTIFIED BY 〃password〃'
'WITH GRANT OPTION ';
MySQL 默认的超级用户帐号有root、空,且密码都为空。这使得别有用心的人很容易从网络上用mysql。exe 连 
接进入,进行破坏活动。
为提高安全性,应在安装完后,迅速更改帐号密码或权限等。
每次更改完毕,必须使用flush privileges ;语句通知服务器启用最新更改的帐号的权限验证用户。
给用户 username (若不存在就新创建一个)从主机host 以密码 password 访问数据库 db_name 中的表 
table_name 的权限(ALL PRIVILEGES 、 SELECT 、UPDATE、DELETE、DROP、CREATE、ALTER 、FILE、 
GRANT 等)。
赋予ALL PRIVILEGES 权限的用户,在其作用域(如某数据库之某表:db_name。table_name )内,是超级用 
户。
权限列表中,权限之间用逗号分隔。
可用符号“*”通配db_name 或table_name,表示所有数据库或所有表。
可用符号“%”通配host,表示除本地机(localhost,服务器所在机器)外的所有主机。
如:
GRANT SELECT ; INSERT ; UPDATE ; DELETE ON ‘test‘。 * TO 〃aaa〃@〃%〃 IDENTIFIED BY 〃aaa〃;
FLUSH PRIVILEGES ;
PHP 讲义 第 60 页 共 90 页
…………………………………………………………Page 61……………………………………………………………
上两句的意思:授予用户aaa 对数据库test 内所有表的SELECT ; INSERT ; UPDATE ; DELETE 权限,允许他 
使用密码aaa,能从本地机localhost 以外的所有主机登录服务器。
GRANT SELECT ; INSERT ; UPDATE ; DELETE ON ‘test‘。 * TO 〃aaa〃@〃localhost〃 IDENTIFIED BY 〃aaa〃;
FLUSH PRIVILEGES ;
上两句的意思:授予用户aaa 对数据库test 内所有表的SELECT ; INSERT ; UPDATE ; DELETE 权限,允许他 
使用密码aaa,只能从本地机localhost 登录服务器。
SET PASSWORD FOR 〃username〃@ 〃host〃 = PASSWORD(“password”)
以加密形式,更改用户username 的密码
REVOKE ALL PRIVILEGES ON * 。 * FROM 〃username〃@ 〃host〃;
收回用户username 从主机host 访问服务器上所有数据库中所有表的所有权限。
FLUSH PRIVILEGES;
刷新权限列表,通知服务器,启用最新权限,达到使更改后的权限起作用的目的。
4。MySQL 的图形化客户端工具软件
为方便程序员或数据库系统管理员(DBA)对 MySQL 的操作,可采用一些图形化客户端工具软件。常用的有 
phpMyAdmin、EMSMySQLManager 等。二者使用方法大同小异,这里只介绍phpMyAdmin。
phpMyAdmin 是一款使用PHP 语言编制的基于Web 使用的MySQL 客户端工具软件。它功能比较丰富,在广大 
MySQL 爱好者中得到了普遍赞誉。
安装
该软件安装包在教学网站提供下载。
将软件包解压,放到服务器的documentroot 下,如果你设置的默认文档为index。php,则键入http://服务器地址 
/phpMyAdmin 所在目录,回车即可出现phpMyAdmin 的用户登录界面。
小说推荐
返回首页返回目录