第7章 MySQL数据库系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第7章 MySQL数据库系统
具体步骤:
1.准备工作
为了避免发生端口冲突、程序冲突等现象,建议先查询MySQL软件的安装情况,确认没有使用RPM方式安装的mysql-server、mysql软件包,否则建议将其卸载。
2.源码编译及安装
1)创建运行用户
为了加强数据库服务的权限控制,建议使用专门的运行用户,如mysql。此用户不需要直接登录到系统,可以不创建宿主文件夹。
2)解包
将下载的mysql源码包解压,释放到/usr/src/目录下,并切换到展开后的源码目录。
3)配置
在内容丰富、结构庞大的企业网站平台中,可能会用到多种字符集的网页,相应数据库系统也应该支持不同的字符集编码。在配置过程中,可以将默认使用的字符集设置为utf8,并添加对gbk、gb2312等其他字符集的支持。
在配置过程之前,系统可能会提醒你设置一下系统日期,否则不能进行配置工作。
在mysql 5.1.55版本的源码包中,对于通过--with-extra-charset配置选项后添加的其他字符集编码,还需要对其进行一下小调整,才能在编译后获得完整的支持。如修改include子文件下的config.h文件,添加相应字符集的编译定义即可:
4)编译并安装
编译报错时,可能是缺少一个ncurses-devel包,安装之后再配置一次即可。
3.安装后的其他调整
1)建立配置文件
在MySQL源码目录中的support-files文件夹下,提供了适合不同负载数据库的样本配置文件。如果不确定数据库系统的应用规模,一般选择f文件即可,该文件能够满足大多数企业的中等应用需求。
2)初始化数据库
为了能够正常使用MySQL数据库系统,应以运行用户mysql的身份执行初始化任务,以便建立用户授权库、表,以及test测试库等。初始化脚本mysql_install_db位于安装目录下的bin文件夹中。此外,还应调整用于存放数据库内容的文件夹属性,以便mysql用户有权限对其进行读写操作。
3)优化执行路径、程序库路径
为MySQL系统的各种执行程序添加符号链接,以方便其使用。另外,建议MySQL 的库文件、头文件也添加符号链接,便于在安装其他的用到这些文件的软件包时能自动搜索。
4.添加系统服务
若希望添加mysqld系统服务,以便通过chkconfig进行管理,可以直接使用源码包中提供的服务脚本。找到support-files文件夹下的mysql.server脚本文件,将其复制到/etc/init.d/目录下,并改名mysqld,然后再设置执行权限,通过chkconfig命令将其添加为mysqld系统服务。
访问MySQL数据库
1.登录到Mysql服务器
经过安装后的初始化过程,MySQL数据库的默认管理员账号为root,密码为空。若要以未设置密码的root用户登录本机的MySQL数据库,可以执行以下操作:
当然,如果登录的是其他的MySQL服务器,则需要使用“-h”选项来指定目标主机地址;在有密码的情况下,还应使用“-p”选项来进行密码校验。例如,若要连接到MySQL服务器173.16.16.5,并以用户adm411进行有密码的验证,可以执行以下操作。
2.执行MySQL操作语句
验证成功后将会进入到提示符为“mysql>”的数据库操作环境,用户可以输入各种操作语句对数据库进行管路。每一条MySQL操作语句可以分号“;”表示结束,输入时不区分大小写,但习惯上将MySQL语句中的关键字部分使用大写。
例如:以root用户登录到“mysql>”环境后,执行“show master logs;”语句可以查看到当前数据库服务的日志文件信息。
3.退出“mysql>”操作环境
在“mysql>”操作环境中,执行“exit”或“quit”可以退出mysql命令工具,返回到原来的shell环境。
查看数据库结构
1.查看当前服务器中有哪些库
show database 语句:用于列出当前MySQL服务器中包含的库。经初始化后的MySQL服务器,默认建立了三个库:test、mysql和information_schema(其中mysql包含了用户认证相关的表),执行以下操作可以进行查看。
2.查看当前使用的库中有哪些表
show tables 语句:用于列出当前所在的库中包含的表。在操作之前,需要
先使用use语句切换到所使用的库。
MySQL数据库的数据文件默认存放在/usr/local/mysql/var目录下,每个数据库对应一个子目录,用于存储数据表文件。每一个数据表对应为三个文件,后缀名分别为“.from”、“.MYD”和“.MYI”。
3.查看表的结构
describe语句:用于显示表的结构,即组成表的各字段(列)的信息。需要指定“库名.表名”作为参数;若只指定表名参数,则需先通过“use”语句切换到目标库。
创建及删除库和表
1.创建新的表
create database语句:用于创建一个新的库,需指定数据库名称作为参数。
刚创建的数据库是空的,其中不包含任何表,在/usr/local/mysql/var/目录下会自动生成一个与新建的库名相同的空文件夹。
2.创建新的表
create table 语句:用于在当前库中创建新的表,需指定数据表名称作为参数,并定义该表格所使用的名字段。基本格式如下所示:
create table 表名(字段1名称类型,字段2名称类型, ……, primary
key (主键名))
考虑到字符集兼容性,最好不要使用中文字段名。
3.删除一个数据表
drop table语句:用于删除库中的表,需要指定“库名.表名”作为参数;若只指定表名参数,则需先通过“use”语句切换到目标库。
4.删除一个数据库
drop database语句:用户删除指定的库,需要指定库名作为参数。
管理表中的数据记录
1.插入数据记录
insert into 表名(字段1, 字段2,……) values(字段1的值,字段2的值,……)
在插入新的数据记录时,如果这条记录完整包括表中所有字段的值,则插入语句中指定字段的部分可以省略。
为用户设置密码时,如果使用“password”,那么查看到的用户密码则是加密的;如果不使用“password”,那么查看到的用户密码则是明文的。
2.查询数据记录
select语句:用于从指定的表中查找符合条件的数据记录。MySQL数据库支持标准的SQL查询语句,语句格式如下所示:
select 字段名1,字段名2,…… from 表名 where 条件表达式表示所有字段时可以使用通配符“*”,若要列出所有的数据记录则可以省略where条件子句。