MySQL网络数据库指南.doc
《MySQL网络数据库指南.doc》由会员分享,可在线阅读,更多相关《MySQL网络数据库指南.doc(278页珍藏版)》请在三一办公上搜索。
1、Linux 与自由软件资源丛书MySQL 网络数据库指南MySQL 是完全网络化的跨平台关系型数据库系统,同时是具有客户机/服务器体系结构的分布式数据库管理系统。它具有功能强、使用简便、管理方便、运行速度快、安全可靠性强等优点,用户可利用许多语言编写访问MySQL 数据库的程序,另外,MySQL在UNIX等操作系统上是免费的,在Windows操作系统上,可免费使用其客户机程序和客户机程序库。本书通过两个实例,详细介绍了MySQL的基本概念、基本技巧、编程方法、管理特点,以及第三方工具(如PHP和Perl)的使用方法。本书还提供了大量与MySQL有关的因特网站点,以及获得MySQL的技术支持方法
2、。本书适合数据库、网络开发与管理等人员参考。Paul DuBois:MySQL.Authorized translation from the English language edition published by New Riders, an imprint of Macmillan Computer Publishing U. S. A.Copyright * 2000 by New Riders Publishing.All rights reserved.Chinese simplified language edition published by China Machine P
3、ress.Copyright * 2000 by China Machine Press.本书中文简体字版由美国麦克米兰公司授权机械工业出版社独家出版。未经出版者书面许可,不得以任何方式复制或抄袭本书内容。版权所有,侵权必究本书版权登记号:图字:01-2000-0458图书在版编目(CIP)数据MySQL网络数据库指南/(美)杜波瓦(DuBois, P.)著;钟鸣,田晓涛等译. -北京:机械工业出版社,2000.6(Linux与自由软件资源丛书)ISBN 7-111-08065-3I. M II. 杜 钟 田 III. 关系数据库-数据库管理系统,IV. TP311. 138中国版本图书馆CI
4、P数据核字(2000)第25536号机械工业出版社(北京市西城区百万庄大街22号 邮政编码 100037)责任编辑:吴 怡 瞿静华 印刷新华书店北京发行所发行2000年6月第1版第1次印刷787mm1092mm 1/1631.75印张印数:0 001- 6 000册定价:49.00元凡购本书,如有倒页、脱页、缺页,由本社发行部调换译 者 序MySQL 是一个可用于各种流行操作系统平台的关系数据库系统,它具有客户机/服务器体系结构的分布式数据库管理系统。MySQL 完全适用于网络,用其建造的数据库可在因特网上的任何地方访问,因此,可以和网络上任何地方的任何人共享数据库。MySQL具有功能强、使用
5、简单、管理方便、运行速度快、可靠性高、安全保密性强等优点。而且还可以利用许多语言编写访问 MySQL 数据库的程序。除了以上特点,MySQL 还有一个最大的特点,那就是在诸如 UNIX 这样的操作系统上,它是免费的,可从因特网上下载其服务器和客户机软件。并且还能从因特网上得到许多与其相配的第三方软件或工具。而在 Windows 系统上,其客户机程序和客户机程序库是免费的。本书介绍了MySQL 的基础知识和概念。介绍了如何有效地使用 MySQL,从而更有效地完成工作。还介绍了怎样将信息放入 MySQL 数据库,然后编写查询,得出查询结果等。讲解了怎样将 MySQL 与其他系统或语言进行集成,以便
6、更好地完成工作。本书提供了大量与 MySQL 有关的因特网站点,可以从这些站点免费下载 MySQL 客户机程序和服务器代码、各种程序包,以及获得 MySQL 的相关技术支持。本书适合具有一定关系数据库知识,并希望在网络上建立分布式数据库,或建立基于因特网的应用系统的读者使用。也适合 MySQL 数据库管理员使用。参加本书翻译的人员有:钟鸣、田晓涛、耿娜、何江华、钟强、王君、郝玉杰、魏允韬、石永平、徐毅、张文、孙登峰、刘晓华、曲京、何粼、文卫东、徐海琛、张维琪、刘向军、陈登科、汪民红、梅刚、王联华,全书由刘晓霞审校。由于译者水 有限,难免有错误或不当之处,敬请读者批评指正。2000年3月序当我第
7、一次见到本书时,并没有想到要为本书做序。我过去的观点是,不要让程序员写书,即便是为程序员写书也是这样。但Paul DuBois 改变了我的观点。在编程方面,我有一点才能,而Paul DuBois 却极有天分,他可以清楚地解释用户难以理解的问题。虽然我们一直致力于开发MySQL,尽最大努力使它工作得更快、更好。但是,MySQL 的功能很多,大多数用户需要实用信息以使MySQL 发挥最大功能。在过去的一年中,Paul DuBois 一直在整理MySQL参考指南,以及使用MySQL。为了研究MySQL,他针对上百个问题,与我们交换过意见,并把他的研究成果写入了本书。MySQL联机参考指南是MySQL
8、的专业技术参考信息。但是,书本可以把技术概念解释更详细,查找更方便,我们希望本书能够达到这个目的。本书也介绍了旧版本MySQL的功能,所介绍的大部分内容为基本概念。因此,本书将有长久的参考价值。感谢所有为MySQL 做出贡献的人们。MySQL技术开发总监,Michael “Monty”Widenius1999年11月14日于Helsingfors前 言关系数据库管理系统(RDBMS)是许多环境中的一个基本的工具,从商务、研究和教育环境中的许多传统应用程序到诸如因特网上的强有力的搜索引擎这样的较新应用程序都要使用它。尽管好的数据库对管理和访问资源很重要,但是许多机构已经发现使用好的数据库对他们来
9、说力所不及。回顾过去,数据库系统一直是昂贵的,供应商要收取软件和技术支持费用,而且要具有合理的运行性能,数据库引擎的硬件通常都要求很高,而这些硬件在更早的时候其成本会更高。近年来,软件与硬件的行情已有所改变。个人计算机越来越便宜,功能也越来越强,所以整个发展方向已经转向了为个人计算机编写高性能的操作系统上,只要买一张便宜的 CD 就可以得到这些操作系统,甚至可从因特网上免费下载,例如BSD UNIX(FreeBSD、NetBSD、OpenBSD)以及各种形式的 Linux(RedHat、Caldera、LinuxPPC等等)。驱使个人计算机发挥它们最大功能的免费操作系统产品出现的同时,免费工具
10、的开发(在很大程度上免费工具的开发也扩展了免费操作系统的使用)也出现了,如 gcc 即 GNU C 编译器。使软件对任何想要它的人都能得到所做的这些努力现在称为开放源代码(Open Source)运动,并且已经产生了许多重要的软件。世界上最忙的 FTP 站点 运行的就是 FreeBSD。Apache 是因特网上使用最广泛的 Web 服务器。其他的开放源代码资源有 Perl 通用脚本语言和 PHP,后者是一种流行的快速增长的语言,因为用它可方便地编写动态 Web页。这些软件与将用户固定在供应商的高价产品中的专利软件形成了鲜明的对照,况且这些供应商都不提供源代码。数据库软件也变得更容易到手了。如
11、Postgres 和 mSQL 这样的数据库系统已经可以免费得到,至少花很少的钱就可以得到。最近,诸如 Informix 和 Oracle 这样的供应商已经开始在免费的操作系统(如 Linux)上提供他们的软件了(但是,这些产品通常只有二进制代码形式,且无技术支持,这样就降低了它们的可用性)。在免费或低价格的数据库中有一个最新的软件,就是 MySQL,它起源于斯堪的纳维亚地区的一个 SQL 客户机/服务器关系数据库管理系统。MySQL 包括一个 SQL 服务器、访问服务器的客户机程序、管理工具和一个编写用户自己的程序的编程接口。MySQL 最早起始于 1979 年,开始是 Michael “M
12、onty” Widenius 为瑞典的 TcX 公司创建的 UNIREG 数据库工具。1994 年,TcX 开始寻找一个用来开发 Web 应用程序的 SQL 服务器。他们测试了一些商业服务器,但是发现所有服务器对于 TcX 的大型表来说都太慢。他们也试了 mSQL,但它缺乏 TcX 需要的某些功能。因此,Monty 开始开发一种新的服务器。其编程接口明确地设计为类似 mSQL 的编程接口,因为 mSQL 可得到几个免费的工具,所以利用与 mSQL 类似的接口,可以将这些相同的工具用于MySQL 从而大大减少了开发接口的工作。1995 年,Detron HB公司的 David Axmark 努力
13、争取 TcX公司在因特网上发布 MySQL。David 还做了文档资料方面的工作和使 MySQL 与 GNU 的配置实用程序一起建造的工作。MySQL 3.11.1 在 1996 年以用于 Linux 和 Solaris 系统的二进制分发形式发布。今天,MySQL 正工作在许多平台上,并且二进制和源代码的形式都可以得到。MySQL 并不是一个开放源代码的产品,因为在某些条件下使用它需要许可证。但是,MySQL 很愿意在开放源代码的团体内得以普及,因为“认证”这个术语并不是非常有约束力的(除非通过出售 MySQL 或出售需要它的服务来挣钱,否则,大体上说 MySQL 一般是免费的)。MySQL
14、的普及并不限于开放源代码团体内。虽然它在个人计算机上运行(确实,MySQL 的开发一般在不昂贵的 Linux 系统上进行),但它是可移植的,并且运行在商用操作系统(如 Solaris、Irix 和 Windows)和一直到企业服务器的各种硬件上。此外,它的性能也足以和任何其他系统相匹敌,而且它还可以处理具有数百万个记录的大型数据库。MySQL 的广泛应用前景在我们面前尚未完全展开,如运行在功能强但不昂贵的硬件上的免费可用操作系统,将丰富的处理功能和能力提供给比以往更多的人,在比过去范围更广的系统上运行等等。信息处理的经济障碍的降低使强有力的数据库解决方案到达了比过去任何时候更多的人和机构的手中
15、。例如,本人在运行 LinuxPPC 的 G3 PowerBook 笔记本电脑上使用 MySQL 与 Perl、Apache 和 PHP,这允许本人在任何地方都可以进行工作,总的成本只是 PowerBook 的成本。过去只能梦想将高性能的 RDBMS 用于自己工作的机构,现在可以这样做了,并且开销很低。数据库的利用在单一的层次上也在不断地增加。过去从未想过要使用数据库的人现在也开始考虑一旦得到一个数据库,怎样将其用于自己的各种目的,例如用来存储和访问系统的研究结果,跟踪和维护最喜爱的收藏物(蝴蝶、邮票、捧球明星卡等等),帮助管理新开张的公司,或者提供个人 Web 站点的搜索能力。为什么选用 M
16、ySQL如果您正在寻找一种免费的或不昂贵的数据库管理系统,可以有几个选择,如,MySQL、mSQL、Postgres(一种免费的但不支持来自商业供应商引擎的系统)等。在将 MySQL 与其他数据库系统进行比较时,所要考虑的最重要的因素是性能、支持、特性(与 SQL 的一致性、扩展等等)、认证条件和约束条件、价格等。相比之下,MySQL 具有许多吸引人之处: 速度。MySQL 运行速度很快。开发者声称 MySQL 可能是目前能得到的最快的数据库。可访问 (MySQL Web 站点上的性能比较页),调查一下这个性能。 容易使用。MySQL 是一个高性能且相对简单的数据库系统,与一些更大系统的设置和
17、管理相比,其复杂程度较低。 价格。MySQL 对多数个人用户来说是免费的。详细的信息请参阅本前言后面的 “MySQL是否免费”一节。 支持查询语言。MySQL 可以利用 SQL(结构化查询语言),SQL 是一种所有现代数据库系统都选用的语言。也可以利用支持 ODBC(开放式数据库连接)的应用程序,ODBC 是 Microsoft 开发的一种数据库通信协议。 性能。许多客户机可同时连接到服务器。多个客户机可同时使用多个数据库。可利用几个输入查询并查看结果的界面来交互式地访问 MySQL。这些界面为:命令行客户机程序、Web 浏览器或 X Window System 客户机程序。此外,还有由各种语
18、言(如 C、Perl、Java、PHP 和 Python)编写的界面。因此,可以选择使用已编好的客户机程序或编写自己的客户机应用程序。 连接性和安全性。MySQL 是完全网络化的,其数据库可在因特网上的任何地方访问,因此,可以和任何地方的任何人共享数据库。而且 MySQL 还能进行访问控制,可以控制哪些人不能看到您的数据。 可移植性。MySQL 可运行在各种版本的 UNIX 以及其他非 UNIX 的系统(如 Windows 和 OS/2)上。MySQL 可运行在从家用 PC 到高级的服务器上。 开放式的分发。MySQL 容易获得;只要使用 Web 浏览器即可。如果不能理解某样东西是如何起作用的
19、,或者对某个算法感到好奇,可以将其源代码取来,对源代码进行分析。如果不喜欢某些东西,则可以更改它。技术支持如何?这个问题提得好。一个数据库如果没有技术支持,那么它就没有多大用处。当然,我希望本书能满足您的一切需要。但实际上,还是会有一些我没有想到的问题,或者因篇幅所限而没有谈到的问题。因此,还可以从以下地方得到帮助: MySQL 含有一个内容丰富的参考指南(450 页还要多)。 喜欢正式协约的人可从 MySQL 的开发者那里得到技术支持合同。 有一份可发送邮件的清单,任何人都可以预订。该清单上有许多能提供帮助的人员,其中包括 MySQL 的开发者。作为一种技术支持资源,许多人认为对于自己的要求
20、来说已经足够了。MySQL 组对开发者和非开发者都一视同仁。对邮件清单上所提问题通常几分钟内就可以回答。如果有出现问题的报告,开发者一般会在数天内(或数小时内!)发布纠错资料,这些纠错资料在因特网上立即就可以得到。这与一些大供应商经常阻挠他们的经验技巧的传播形成了鲜明的对比。(当我对某个产品有问题时,是受制于供应商,还是发送一个问题给邮件清单且在任何自己方便的时候查看回答。在这两者中选择哪一个,答案是不言而喻的。)如果您正在选择数据库,则 MySQL 是一个很理想的候选者。可以试用一下 MySQL 而不会冒任何经济风险。如果遇到困难,可以利用邮件清单获得帮助。对MySQL进行评估要占用一定的时
21、间,但是评估别的数据库系统也是要花时间的,而安装和设置 MySQL 的时间比安装和设置许多其他数据库系统所花时间要少。如果已经运行了其他数据库如果您目前正在使用其他数据库系统,应该转到 MySQL 吗?具体情况具体分析。如果您对当前的系统感到很满意,为什么要费力去转换呢?但是,如果感到受所用数据库系统的制约,那么很显然,应该考虑使用 MySQL。如果当前数据库系统的性能令人担忧,或者该系统是专有的而您并不希望受困于它,或者希望在当前系统不支持的硬件上运行,或者您的软件是以二进制形式提供的而您确实需要有源代码可用,或者仅仅是因为您正在使用的系统价钱太贵,则都应该探索使用 MySQL。可先通过本书
22、熟悉 MySQL 的性能,再向 MySQL 的邮件清单提点问题,那您大概就会找到做决定所需的答案。如果考虑从其他 SQL 数据库转到 MySQL,应该查看一下 的 MySQL Web 站点上的对比页。然后查看与 MySQL 数据类型和MySQL 中 SQL 语言有关的本书各章。您可以判断,是否当前 RDBMS 所支持的 SQL 版本太不相同,移植应用程序所需的工作量太大。要做出评价必须试着移植几个例子,当然,这样做以后,也许您会感到并不像您所想像的那么困难。即使您的数据库是一个老得连 SQL 都不懂的数据库也不困难。本人最近转换了一个非基于 SQL 的 RDBMS 的记录管理系统。该系统在语言
23、上与SQL无任何类似性可供利用,而且有的数据类型还没有 SQL 的对应类型。这个项目需要转换网络访问方式和许多基于屏幕的录入程序及固定查询。大约花费了一个半月的工作,但结果还不坏。MySQL 提供的工具MySQL 包含有下列工具: SQL 服务器。这是 MySQL 的引擎,它提供对数据库的访问。 访问服务器的客户机程序。包括一个允许直接录入查询并查看结果的交互式程序,以及几个帮助操纵站点的管理程序和实用程序。其中有一个实用程序允许控制服务器。其他的实用程序导入或导出数据,检查访问许可等。 帮助用户编写自己的程序的客户机库。可用 C 语言编写客户机程序,因为这个库是 C 语言编写的,这个库还为其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MySQL 网络 数据库 指南
链接地址:https://www.31ppt.com/p-2394873.html