基于Linux下的小型数据库设计正文.doc
- 文档编号:1241902
- 上传时间:2023-04-30
- 格式:DOC
- 页数:21
- 大小:561.50KB
基于Linux下的小型数据库设计正文.doc
《基于Linux下的小型数据库设计正文.doc》由会员分享,可在线阅读,更多相关《基于Linux下的小型数据库设计正文.doc(21页珍藏版)》请在冰点文库上搜索。
刘旭东《基于Linux下的小型数据库设计》第21页共21页
Linux操作系统下的小型数据库设计
摘要本系统是采用MySQl数据库技术,使用的是数据库服务器--MySQL和Web的程序设计语言—PHP,基于Linux操作系统的网络数据库系统。
本设计要求根据所学的数据库原理与程序设计的知识针对一个小型的数据库管理系统,掌握Linux操作系统命令,完成系统设计,数据库设计,编码,测试等,从而达到掌握一个小型数据库的目地。
关键词Linux操作系统;PHP;MySQL数据库
AbstractThissystemusestheMySQldatabasetechnology,usingadatabaseserver-MySQLandWebprogramminglanguages-PHP,Linux,Web-baseddatabasesystem.Accordingtothestudyofthedesignprinciplesandproceduresofthedatabasedesignforasmallknowledgeofdatabasemanagementsystems,Linuxoperatingsystemcommandstomastertocompletethesystemdesign,databasedesign,coding,testing,etc.,soastoachievecontrolobjectivesinasmalldatabase.
KeywordsLinuxoperatingsystem;PHP;MySQLdatabase
目录
1引言 2
1.1Linux操作系统下的网络数据库设计 3
1.2系统可行性分析 3
1.3系统硬件需求分析 3
2Linux操作系统及其常用命令简介 4
2.1Linux操作系统简介 4
2.2目录及文件操作命令 5
2.2使用命令 8
3数据库设计与实现 9
3.1Apache服务器的配置 9
3.2PHP简介 10
3.3PHP编程 10
3.4MySQL数据库服务器 15
3.5程序流程图 15
3.6建立数据库 16
4运行结果及其分析 19
4.1运行结果 19
5结束语 20
1引言
数据库设计是指根据的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。
就是规则和结构化数据库中的数据对象以及这些数据对象之间关系的过程。
Linux操作系统下的网络数据库设计是利用Linux系统进行对Web的开发,开发Web的工具很多,我们使用的是数据库服务器--MySQL和Web的程序设计语言—PHP。
在Linux操作系统下使用MySQL数据库服务器建立一个小型的数据库,建立完成后在通过Web的程序设计语言PHP将程序嵌入到HTML文档中去执行,以实现对数据库的访问。
1.1Linux操作系统下的小型数据库设计
数据库设计是指根据的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。
就是规则和结构化数据库中的数据对象以及这些数据对象之间关系的过程。
Linux操作系统继承了UNIX操作系统的支持多用户,多任务,稳定性好,网络功能强大等众多优点。
最为开源操作系统,Linux发展迅速,其应用遍及金融,教育,邮政,电信等众多行业。
Linux操作系统下的网络数据库设计是利用Linux系统进行对Web的开发,开发Web的工具很多,我们使用的是数据库服务器--MySQL和Web的程序设计语言—PHP。
在Linux操作系统下使用MySQL数据库服务器建立一个小型的数据库,建立完成后在通过Web的程序设计语言PHP将程序嵌入到HTML文档中去执行,以实现对数据库的访问。
PHP是一种可以运行在多种硬件和操作系统环境下的动态网页设计语言,它与Linux,Apache服务器以及MySQL的组合是目前最流行的Web应用平台。
本课程设计根据所学的数据库原理与程序设计的知识,针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,测试等,完成题目要求的功能,从而达到掌握一个小型的数据库的目地。
1.2系统可行性分析
MySQL是一个小巧的数据库服务器软件,对于中小型应用系统是非常理想的。
除了支持标准的ANSISQL语句,它还支持多种平台,而在UNIX系统上的该软件支持地多线程运行方式,从而能获得相当好的性能。
而且其提供了一套非常实用的权限系统,胜于管理和控制某个用户是否连接到指定的MySQL数据库,以及控制用户的操作功能。
1.3系统硬件需求分析
系统软件:
RedHatLinux
数据库管理系统:
MySQL
硬件要求:
PentiumIII450以上,258MRAM,14GHD
2Linux操作系统及其常用命令简介
Linux系统是以全双工的方式工作,即从键盘把字符输入系统,系统再将字符回送到终端并显示出来,在Linux系统中打开终端的方式有以下两种:
一种是在桌面上依次依次单击“主菜单→系统工具→终端”可打开终端窗口;另一种是在Linux桌面上单击右键,从弹出的快捷菜单中选择:
“终端”命令,也可打开终端窗口。
终端显示提示符后,用户就可以输入命令请求系统执行。
下面我们将介绍Linux操作系统的一些常用命令。
2.1Linux操作系统简介
Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intelx86系列CPU的计算机上。
这个系统是由全世界各地的成千上万的程序员设计和实现的。
其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。
绝大多数基于Linux内核的的操作系统使用了大量的GNU软件,包括了shell程序、工具、程序库、编译器及工具,还有许多其他程序。
内核是系统的核心,是运行程序和管理像磁盘和打印机等硬件设备的核心程序;系统的用户界面Shell提供了用户与内核进行交互操作的一种接口;Linux文件系统是文件存放在磁盘等存储设备上的组织方法Linux能支持多种目前流行的文件系统,如EXT2、EXT3、FAT、ISO9660、NFS等;标准的Linux系统都有一整套称为应用程序的程序集,包括文本编辑器,编程语言,XWindow,办公套件,Internet工具,数据库等。
Linux以它的高效性和灵活性著称。
它能够在PC计算机上实现全部的Unix特性,具有多任务、多用户的能力。
Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。
Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。
它还包括带有多个窗口管理器的X-Window图形用户界面,如同我们使用WindowsNT一样,允许我们使用窗口、图标和菜单对系统进行操作。
2.2目录及文件操作命令
1.文件显示命令
显示指定工作目录中所包含的内容的指令是ls,要说明的是ls命令列出文件的名字,而不是文件的的内容。
该命令的使用方式为:
ls[选项][文件目录列表],列举出任一目录下面的文件:
有、eg:
ls/usr/man
Ls命令中的常用选项如下:
-a列出目录下的所有文件,包括以.开头的隐含文件。
-b把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。
-c输出文件的i节点的修改时间,并以此排序。
-d将目录象文件一样显示,而不是显示其下的文件。
-R列出所有子目录下的文件。
-S以文件大小排序。
--help在标准输出上显示帮助信息。
--version在标准输出上输出版本信息并退出。
2.显示目录内容的命令和改变工作目录
(1)显示当前目录
显示当前目录的命令是pwd命令,该命令使用的语法格式为:
pwd.
(2)改变当前工作目录
改变当前工作目录在Linux系统中使用的是cd命令,该命令使用的语法格式如下:
cd[目录名]
3创建和删除目录的命令
(1)创建目录
在Linux系统中建立新目录的命令是mkdir。
该命令的语法格式如下:
mkdir[-m模式][-p目录名]目录
如创建一个保为test的目录,语法为mkdirtest
命令中的参数说明如下:
m模式:
在建立目录时把按模式指定设置目录权限。
该目录的权限分为:
目录所有者的权限、组中其他人对目录的权限和系统中其他人对目录的权限。
这三个权限分别用三个数字之和来表示:
对目录的读权限是4、写权限是执行权限是1。
(2)删除目录
rmdir命令是用来删除目录的,一般情况下要删除的目录必须为空目录,如果所给的目录不为空,系统会报告错误。
该命令的语法格式如下:
rmdir-p目录列表
命令中的参数说明如下:
-p:
在删除目录表指定的目录后,若父目录为空,则rmdir也删除父目录。
状态信息显示什么被删除,什么没被删除。
目录列表:
空格分隔的目录保列表。
要删除的目录为空。
3查找,排序及显示指定文件内容的命令
(1)查找文件
在Linux系统中查找文件的命令通常为find命令。
find命令可在使管理Linux系统中方便地查找所需要的指定文件。
find命令的语法格式如下:
find[目录列表][匹配标准]
(2)显示文本文件内容
显示文本文件内容的命令是cat命令,用来将文件的内容显示到终端上,其命令语法如下:
cat[选项]文件列表
(3)查找文件内容
查找文件内空的命令是grep命令。
其使用的语法如下:
grep[选项]匹配字符串文件列表
(4)排序命令
sort命令的功能是对文件中的各行进行排序。
sort命令有许多非常实用的选项,这些选项最初是用来对数据库格式的文件内容进行各种排序操作的。
实际上,sort命令可以被认为是一个非常强大的数据管理工具,用来管理内容类似数据库记录的文件。
语法如下:
sort[选项]文件
说明:
sort命令对指定文件中所有的行进行排序,并将结果显示在标准输出上。
如不指定输入文件或使用"-",则表示排序内容来自标准输入。
4、改变文件或目录权限
在Linux系统中,设定文件权限控制其他用户不能访问、修改。
但在系统应用中,有时需要让其他用户使用某个原来其不能访问的文件或目录,这是就需要重新设置文件的权限,使用的命令是chmod命令。
并不是谁都可改变文件和目录的访问权限,只有文件和目录的所有者才有权限修改其权限,另外超级用户可对所有文件或目录进行权限设置。
Chmod命令的使用语法格式如下:
语法格式:
chmod[-vR][No]文件名
参数说明:
No三位代表相应权限的数字
-v显示权限改变的详细资料
-R表示对当前目录下的所有文件和子目录进行相同的权限更改
可能这种方式对于初学者来说有一定的难度,但这种方法学会后在更改文件权限就变得非常的简单。
相信通过我的介绍大家会掌握种方法的:
)
首先了解一下读取(r)、写入(w)、执行(x)相应的数字编号,如下图所示
图2.1chmod命令说明
2.2使用命令
1.文件打包tar
tar命令
解压文件到指定目录:
tar-zxvf/home/user/aa.tar.gz-C/home/user/pf
tar[-cxtzjvfpPN]文件与目录....
参数:
-c:
建立一个压缩文件的参数指令(create的意思);
-x:
解开一个压缩文件的参数指令!
-t:
查看tarfile里面的文件!
特别注意,在参数的下达中,c/x/t仅能存在一个!
不可同时存在!
因为不可能同时压缩与解压缩。
-z:
是否同时具有gzip的属性?
亦即是否需要用gzip压缩?
-j:
是否同时具有bzip2的属性?
亦即是否需要用bzip2压缩?
-v:
压缩的过程中显示文件!
这个常用,但不建议用在背景执行过程!
-f:
使用档名,请留意,在f之后要立即接档名喔!
不要再加参数!
例如使用『tar-zcvfPtfilesfile』就是错误的写法,要写成『tar-zcvPftfilesfile』才对喔!
-p:
使用原文件的原来属性(属性不会依据使用者而变)
-P:
可以使用绝对路径来压缩!
-N:
比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!
--excludeFILE:
在压缩的过程中,不要将FILE打包!
2.系统帮助文档
Help命令用于查看所有Shell命令。
(1)cd转移目录
cd/home/steph将转移到/home/steph
cd..上移一个目录
cd回到根目录
(2).建立新文件和文件夹
touchnew-filename建立新文件
mkdirnew-directory建立新目录
(3).删除文件和目录
rmfilename删除名为filename的文件
rmdirfoldername删除名为foldername的目录
(4).修改文件夹权限
chmod755foldername将把名为foldername的文件夹的权限修改为755
(5).修改用户
chownsteph:
stephfile.html把file.html的用户修改为steph:
steph
3数据库设计与实现
Linux操作系统下的网络数据库设计需要先使用MySQL数据库服务器建立一个数据库。
3.1Apache服务器的配置
Apache服务器一个主要的特点是完全免费且完全公开其源代码,,用户可根据自身的需要去进行相关模块的开以。
Apache服务器另一个主要的特点是其跨平台性,其可在UNIX,Windows,Linux等多种操作系统上运行。
如果需要创建一个每天有数百万人访问的Web服务器,Apache可能是最佳选择。
在RedHatLinux9中自带了以下两个Apache2.0的安装文件:
httpd:
Apache2.0和httpd-manual:
Apache2.0手册,检测Linux系统中是否已经安装了Apache服务器可以使用下面的命令:
#rpm-qa/grephttpd.
打开HTTP配置工具的方法有两种:
⑴依次单击“主菜单→系统设置→服务器设置→HTTP服务器”。
⑵在终端提示中键入命令#redhat-config-httpd.
3.2PHP简介
PHP源于名为PHP/FI的工程。
PHP/FI是由RasmusLerdorf在1995年创建的,最初只是一套简单的Perl脚本,取名为“PersonalHomePageTools”,用来跟踪访问其主页的用户信息。
随着功能需求的增加,Rasmus用C语言实现了新版本。
它可以访问数据库,可以让用户开发简单的动态Web程序。
Rasmus公开了PHP/FI的源代码,同时允许其他人修正bug并改进源代码。
PHP最强大最显著的特性是支持多种数据库。
其中,PHP与MySQL是目前绝佳的组合。
PHP支持多种网络协议
PHP支持LDAP、IMAP、SNMP、NNTP、POP3、HTTP、COM(Windows环境)等大量协议。
PHP支持对Java对象的即时连接,并且可以将它们自由地用作PHP对象,甚至还可以用CORBA扩展库来访问远程对象。
PHP具有强大的文本处理功能,支持POSIX扩展、Perl正则表达式和XML文档解析。
为了解析和访问XML文档,PHP支持SAX和DOM标准,可以使用XSLT扩展库来转换XML文档。
PHP还能够非常简便地输出文本,如XHTML和其他形式的XML文件。
PHP能够自动生成这些文件,并将它们直接打印出来,或者存储在文件系统中。
使用PHP进行Web开发时,可以选择面向过程方式或者面向对象方式,又或者两者混和的方式。
PHP提供了类和对象,尽管还没有支持OOP的所有标准,但很多代码和应用程序(包括PEAR库)仅使用OOP来开发。
3.3PHP编程
前面MysqL链接建立的数据库lbuser通过Web程序设计语言PHP将程序嵌入到HTML文档中去执行,以实现对数据库的访问
PHP链接MysqL的实现步骤:
1)与MysqL服务器建立连接。
2)选择准备操作和使用的指定数据库。
3)发出SQL命令。
用一个函数向MySQL服务器发出SQL的查询指令语句字符串。
4)发出的字符串可以是SQL的任何DML查询指令包括INSERT、DELETE等,但是要取得数据应使用SQL查询语句——SELECT。
查询函数会返回一个查询结果指针。
结果中返回特定的数据。
通常会返回一笔记录,返回的类型为数组或对象。
关闭链接,关闭与数据库的链接。
1、PHP语法简介
这是PHP语言的一个基本的简单程序
php
Echo”hello,world\n”;
?
>
2PHP与MySQL的连接与关闭
PHP与MySQL的关闭的代码如下:
intmysql_connect(hostname:
port,username,password)
php
$username=’root’;
$passwd=’’;//MysqL初始安装时,root用户的密码为空
//连接数据库
$link_mess=mysql_connect(‘localhost’,$username,$passwd);
//显示数据库连接的返回信息
If(!
$link_mess){
Echo”对不起,与MysqL服务器连接失败!
”;
Exit();
}
else
{Echo”已经成功地与MySQL服务器连接”;
}
?
>
当要关闭MySQL连接时,可以使用mysql_close()函数,当关闭成功会返回“True”,否则返回“Flase”。
语法如下:
Mysql_close(变量)
3.数据库的选择
mysql_select_db(数据库)
php
$myconn=mysql_connect(“localhost”,”root”,””);
If(mysql_select_db(“lbuset”)){
echo”lbuser数据库已被选取”;
}
else{
echo”lbuser数据库选取不成功”;
}
?
>
4.发送SQL命令
在读取数据库中的数据表之前,先要用Mysql_query()函数来将SQL命令会给MysqL来处理。
该函数的语法如下:
Mysql_query(SQL命令或变量,链接指针)
读取数据表可使用Mysqlfetchfield()函数,该函数的语法如下:
Mysql_fetch_field(数据查询结果)
php
Mysql_connect(“localhost”,”root”,””);
Mysql_select_db(“lbuser”);
$SQL_String=”Select*fromuser”;
$Exec=Mysql_query($SQL_String);
If($field=Mysqlfetchfield($Exec)}
{
echo”lbuser数据库已被选取”;
}
else{
echo”标题名称:
$field->name
”;
echo”所属数据表:
$field->table
”;
echo”数据类型:
$field->type
”;
echo”字段最大长度:
$field->max_length
”;
}
else
{
echo”没有相关信息“;
}
?
>
5.读取数据
下面的示例是在数据表中读取三条记录,并把读取结果的两个字段在浏览器中显示出来。
php
$dbname=’lbuser’;
$dbtable=’user’;
$myconn=mysql_connect(“localhost”,”root”,””);
mysql_select_db(“lbuser”);
$SQL_String=”Select*fromuserorderbyid”;
$Exec=Mysql_query($SQL_String,$myconn);
mysql_close($myconn);
for($i=1;$i<4;$i++){
$record=mysqlfetchfield($Exec)}
echo”user;”
echo$record[1];
echo“
”;
echo””;
echo$record[2];
echo“
”;
echo“
”;
}
?
>
3.4MySQL数据库服务器
MySQL是一个真正的多用户、多线程SQL数据库服务器。
SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。
MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。
SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。
例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时MySQL也足够快和灵活以允许你存储记录文件和图像。
MySQL主要目标是快速、健壮和易用。
最初是因为我们需要这样一个SQL服务器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL就开发出来。
总体来说,MySQL数据库具有以下主要特点:
1.同时访问数据库的用户数量不受限制;
2.可以保存超过50,000,000条记录;
3.是目前市场上现有产品中运行速度最快的数据库系统;
4.用户权限设置简单、有效。
3.5程序流程图
创建数据库lbuser
打开linus操作系统
创建数据库lbuser
与PHP连接
连接数据库
发送SQL命令
读取结果
创建空数据库lbuser
建立数据表user
装入数据
修改结果
图3.1程序流程图
3.6建立数据库
1查询和启动MySQL数据库软件
打开虚拟机后,开启终端,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Linux 小型 数据库 设计 正文