
2.4 MySQL数据库的安装和运行
MySQL是完全网络化的跨平台关系型数据库系统,具有客户机/服务器体系结构的分布式数据库管理系统。该软件不仅具有功能强、使用简便、管理方便、运行速度快、安全可靠性强等优点,还可利用许多语言编写访问MySQL数据库的程序。
2.4.1 下载MySQL
目前MySQL最新的版本为MySQL-5.1.29-rc-win32,可以通过下面的步骤实现该平台的下载。
① 首先访问下载MySQL的官方网站(http://dev.MySQL.com/),如图2.57所示。

图2.57 MySQL下载首页
② 打开MySQL首页后,单击页面中的Download超级链接,就会进入下载页面,如图2.58所示。

图2.58 选择MySQL版本
③ 在下载页面中选择MySQL 5.0超级链接,打开MySQL 5.0类型的下载页面,如图2.59所示。选择好要下载的类型,单击Download超级链接开始下载MySQL 5.0。

图2.59 选择MySQL 5.0类型
下载完MySQL 5.0后,不需要进行任何配置,就可以安装该服务器。
2.4.2 安装MySQL
2.4.1节介绍了如何下载数据库MySQL,下载完数据库MySQL安装程序后就可以安装该数据库。具体的安装步骤如下所示。
① 双击 MySQL 安装程序(MySQL-5.1.29-rc-win32.exe),就会开始安装过程,如图2.60所示。单击“Next”按钮,在出现的对话框中(如图2.61所示),就可以进行安装类型的选择。默认的安装类型包括以下几种。

图2.60 MySQL欢迎界面

图2.61 MySQL安装类型对话框
Typical:默认的安装类型。
Complete:完全的安装类型。
Custom:自定义的安装类型。
② 选择“Typical”单选按钮后,单击“Next”按钮,在出现的对话框中(如图2.62所示),确认安装的信息。然后单击“Install”按钮,开始MySQL软件的安装。安装完后,在出现的对话框中(如图2.63所示)会询问是否进行配置。如果想安装完数据库后直接进行配置,可以选择该复选框。最后单击“Finish”按钮,就完成了对MySQL软件的安装。

图2.62 安装信息的确认

图2.63 完成MySQL安装
2.4.3 配置MySQL
安装完数据库MySQL后,就可以对该数据库进行配置了。这个步骤是必需的,因为其决定了数据库的性能。详细的配置步骤如下:
① 从开始程序菜单中,选择MySQL Server Instance Config Wizard命令,打开配置对话框,如图2.64所示。在该对话框中进行最基本的配置。

图2.64 配置欢迎界面
② 单击“Next”按钮,在出现的选择配置方式对话框中(如图2.65所示),就可以进行配置方式的选择。默认的配置方式包括以下两种。

图2.65 选择配置方式
Detailed Configuration:手动精确配置方式。
Standard Configuration:标准配置方式。
建议选择手动精确配置方式,以方便熟悉配置过程。
③ 单击“Next”按钮,在出现的选择服务器类型对话框中(如图2.66所示),可以对服务器类型进行选择。默认的服务器类型包括以下几种。

图2.66 选择服务器类型
Developer Machine:开发测试类的服务器类型,这种方式占用资源比较少。
Server Machine:服务器类型,这种方式占用资源比较多。
Dedicated MySQL Server Machine:专门的数据库服务器,这种方式占用所有可用的资源。
④ 选择Developer Machine服务器类型后,单击“Next”按钮,在出现的选择数据库的用途对话框中(如图2.67所示),就可以进行数据库用途的选择。默认的数据库用途有以下几种类型。

图2.67 选择数据库用途
Multifunctional Database:通用多功能型。
Transactional Database Only:服务器类型,其专注于事务处理。
Non-Transactional Database Only:非事务处理类型,其比较简单,一般用于做一些监控、记数。
该对话框一般随着安装者的用途来选择,这里选择“Transactional Database Only”单选按钮。
⑤ 单击Next按钮,在出现的对话框中(如图2.68所示),可以为Transactional数据库文件选择一个存储空间。

图2.68 选择数据库文件路径
⑥ 选择默认值后,单击“Next”按钮,在出现的对话框中(如图2.69所示),可以对MySQL数据库进行连接数目的配置。默认的连接数目如下所示。

图2.69 配置数据库进行连接数目
Decision Support:该种类型的连接数据为20条左右。
Online Transaction Processing:该种类型的连接数据为500条左右。
Manual Setting:该种类型的连接数据可以手工设置。
⑦ 选择“Online Transaction Processing”单选按钮,单击“Next”按钮。在出现的对话框中,选择是否可以启用TCP/IP连接。如果要启用该连接,就要设置端口号,如图2.70所示。

图2.70 是否启用TCP/IP连接
⑧ 把端口号设置为3306后,单击“Next”按钮,在出现的对话框中,可以对MySQL服务器语言编码进行设置,如图2.71所示。默认的服务器语言编码包括以下几种类型。

图2.71 配置服务器语言编码
Standard Character Set:该种类型是西文编码。
Best Support For Multilingualism:该种类型是多字节的通用UTF-8编码。
Manual Selected Default Character Set/Collation:该种类型是汉字编码类型。
选择“Manual Selected Default Character Set/Collation”单选按钮,在“Character Set”下拉列表框中选择“gb2312”语言编码。
⑨ 单击“Next”按钮,在出现的如图2.72所示的对话框中,可以设置Windows选项。

图2.72 设置Windows选项
Install As Windows Service:选择是否把MySQL安装为Windows服务。
Include Bin Directory in Windows PATH:是否把MySQL的bin目录加入到Windows PATH文件。
⑩ 单击“Next”按钮后,在出现的对话框中,可以设置安全选项,如图2.73所示。此处为用户名root设置密码。

图2.73 设置安全选项
⑪ 单击“Next”按钮,在出现的对话框中,确认设置无误后,再单击“Execute”按钮。出现如图2.74所示的对话框,这里显示安装的过程。单击“Finish”按钮,就完成了数据库MySQL的设置。

图2.74 安装过程
2.4.4 启动和运行MySQL
本节讲解了两种方式来启动数据库 MySQL,一种是通过计算机管理器界面来实现,另一种则是通过命令行窗口来实现。启动数据库MySQL后,就可以通过一些具体命令来操作数据库。
1.通过计算机管理器界面启动MySQL
打开Windows的计算机管理器,选择“服务”选项后,如图2.75所示。在右侧栏目中右键单击MySQL选项,在弹出的快捷菜单中选择“启动”命令,就会启动服务器MySQL,如图2.76所示。如果选择“停止”命令,就会停止服务器MySQL。

图2.75 计算机管理器

图2.76 启动MySQL
注意
如果知道服务名称,也可以通过命令方式来启动和停止该项服务。
2.通过命令行窗口启动MySQL
从图2.75中可以知道MySQL服务器的服务名为MySQL,所以可以在命令行窗口中执行“net start"MySQL"”命令来启动MySQL服务器,执行“net stop"MySQL"”命令来停止MySQL服务器,如图2.77所示。

图2.77 启动和停止MySQL
启动数据库MySQL后,就可以通过该软件操作数据库。打开Windows程序开始菜单中管理MySQL的选项,如图2.78所示。选择“MySQL Command Line Client”命令,将出现命令窗口程序界面,如图2.79所示。

图2.78 MySQL开始菜单选项

图2.79 MySQL客户端
首先在命令Enter password后输入为用户名root设置的密码,就会进入数据库MySQL的交互操作界面,如图2.80所示。

图2.80 进入交互操作界面
下面介绍三条常见的MySQL命令。
第一条命令:select version(),current_date();。其用来显示数据库MySQL的版本号和当前日期,如图2.81所示。

图2.81 显示版本号和日期
第二条命令:show database;。其用来显示当前存在数据库,如图2.82所示。

图2.82 显示数据库
第三条命令:quit。其用来退出数据库,读者可自行操作测试结果。
2.4.5 SQL常用命令
DDL(Data Manipulation Language)全称是数据定义语句,主要用来增加和删除数据库及增加、删除和修改数据库表。而DML(Data Manipulation Language)全称数据处理语言,主要用来增加、搜索、修改、删除数据等。下面将介绍实现这些功能的具体命令。
(1)当使用数据库时,首先需要建立一个空的数据库。进入数据库MySQL的交互操作界面,在该界面输入如下代码。
create database usesql; //创建数据库usesql
(2)执行该命令后,就会创建一个数据库 usesql。然后在数据库 MySQL 的交互操作界面,输入如下代码。
show databases; //显示数据库
执行该命令后,就会显示该数据库管理系统的数据库列表。如图2.83所示。

图2.83 创建数据库usesql
(3)新增加数据库后,就可以在该数据库中建立需要的数据表格。在MySQL的交互操作界面输入如下代码。
use usesql; //打开数据库 create table student( //创建表student Id int(3); name char(10) )
(4)执行该命令后,就会创建在数据库usesql中创建一个表student,如图2.84所示。然后,在MySQL的交互操作界面输入如下代码。

图2.84 创建表student
use usesql; //打开数据库 show tables; //显示数据库表列表
(5)执行该命令后,显示数据库usesql中的所有表,如图2.85所示。最后,在MySQL的交互操作界面输入如下代码。

图2.85 显示表student的信息
describe student; //显示表结构
执行该命令后,显示数据表student的表结构,如图2.86所示。

图2.86 显示表student的结构
(6)新增加数据表后,就可以在该数据表中插入数据。在MySQL的交互操作界面输入如下代码。
insert into student values('1','zhangsan'); //插入第一条记录 insert into student values('2','lisi'); //插入第二条记录 select * from student; //显示表student中的所有记录
执行该命令后,就会在数据库usesql 中创建一个表student,如图2.87所示。然后,使用select * from student显示其中的数据,如图2.88所示。

图2.87 插入记录

图2.88 显示插入的记录
(7)为数据表student插入数据后,还可以更改数据表中的数据。在MySQL的交互操作界面输入如下代码。
update student set name='wangwu' where id='1'; //把id为1的记录的name字段改为wangwu select * from student; //查询表student的记录
执行该命令后,就会使得id 为1 的记录的name更改为wangwu。然后,使用select显示更改记录后的结果,如图2.89所示。

图2.89 更新数据表中的数据
(8)如何在表student中删除记录呢?在MySQL的交互操作界面输入如下代码:
delete from student where id='1'; //把id为1的记录删除掉 select * from student; //查询表student的记录
执行该命令后,就会使得id为1的记录删除。然后,使用select显示更改后的结果,如图2.90所示。

图2.90 删除记录
(9)如何删除表student呢?在MySQL的交互操作界面输入如下代码。
drop table student; //删除表student use usesql; //打开数据库usesql show tables; //显示数据库usesql中的表
执行该命令后,就会删除表student。然后,使用select显示数据库表更改后的结果,如图2.91所示。

图2.91 删除表student
(10)如何删除数据库usesql呢?在MySQL的交互操作界面输入如下代码。
drop database usesql;; //删除数据库usesql show databases; //显示数据库列表
执行该命令后,删除数据库 usesql。然后,使用 select显示数据库表更改后的结果,如图2.92所示。

图2.92 删除数据库usesql