常用的数据库软件有哪些?它们的优缺点是什么?
目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。
面向对象的数据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。
国际国内的主导关系型数据库管理系统有Oracle、Sybase、INFORMIX和INGRES。
这些产品都支持多平台,如 UNIX、VMS、Windows,但支持的程度不一样。
IBM的DB2也是成熟的关系型数据库。
但是,DB2是内嵌于IBM的AS/400系列机中,只支持OS/400操作系统。
1.MySQL MySQL是最受欢迎的开源SQL数据库管理系统,它由 MySQL AB开发、发布和支持。
MySQL AB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。
MySQL是MySQL AB的注册商标。
MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。
MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。
与其他数据库管理系统相比,MySQL具有以下优势: (1)MySQL是一个关系数据库管理系统。
(2)MySQL是开源的。
(3)MySQL服务器是一个快速的、可靠的和易于使用的数据库服务器。
(4)MySQL服务器工作在客户/服务器或嵌入系统中。
(5)有大量的MySQL软件可以使用。
2.SQL Server SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库,它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。
目前最新版本是SQL Server 2005,它只能在Windows上运行,操作系统的系统稳定性对数据库十分重要。
并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。
SQL Server 提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持,通过Web对数据进行轻松安全的访问,具有强大的、灵活的、基于Web的和安全的应用程序管理等。
而且,由于其易操作性及其友好的操作界面,深受广大用户的喜爱。
3.Oracle 提起数据库,第一个想到的公司,一般都会是Oracle(甲骨文)。
该公司成立于1977年,最初是一家专门开发数据库的公司。
Oracle在数据库领域一直处于领先地位。
1984年,首先将关系数据库转到了桌面计算机上。
然后,Oracle5率先推出了分布式数据库、客户/服务器结构等崭新的概念。
Oracle 6首创行锁定模式以及对称多处理计算机的支持……最新的Oracle 8主要增加了对象技术,成为关系—对象数据库系统。
目前,Oracle产品覆盖了大、中、小型机等几十种机型,Oracle数据库成为世界上使用最广泛的关系数据系统之一。
Oracle数据库产品具有以下优良特性。
(1)兼容性 Oracle产品采用标准SQL,并经过美国国家标准技术所(NIST)测试。
与IBM SQL/DS、DB2、INGRES、IDMS/R等兼容。
(2)可移植性 Oracle的产品可运行于很宽范围的硬件与操作系统平台上。
可以安装在70种以上不同的大、中、小型机上;可在VMS、DOS、UNIX、Windows等多种操作系统下工作。
(3)可联结性 Oracle能与多种通讯网络相连,支持各种协议(TCP/IP、DECnet、LU6.2等)。
(4)高生产率 Oracle产品提供了多种开发工具,能极大地方便用户进行进一步的开发。
(5)开放性 Oracle良好的兼容性、可移植性、可连接性和高生产率使Oracle RDBMS具有良好的开放性。
4.Sybase 1984年,Mark B. Hiffman和Robert Epstern创建了Sybase公司,并在1987年推出了Sybase数据库产品。
Sybase主要有三种版本:一是UNIX操作系统下运行的版本; 二是Novell Netware环境下运行的版本;三是Windows NT环境下运行的版本。
对UNIX操作系统,目前应用最广泛的是SYBASE 10及SYABSE 11 for SCO UNIX。
Sybase数据库的特点: (1)它是基于客户/服务器体系结构的数据库。
(2)它是真正开放的数据库。
(3)它是一种高性能的数据库。
5.DB2 DB2是内嵌于IBM的AS/400系统上的数据库管理系统,直接由硬件支持。
它支持标准的SQL语言,具有与异种数据库相连的GATEWAY。
因此它具有速度快、可靠性好的优点。
但是,只有硬件平台选择了IBM的AS/400,才能选择使用DB2数据库管理系统。
DB2能在所有主流平台上运行(包括Windows),最适于海量数据。
DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上都用DB2数据库服务器,而国内到1997年约占5%。
除此之外,还有微软的 Access数据库、FoxPro数据库等。
既然现在有这么多的数据库系统,那么在游戏编程时应该选择什么样的数据库呢?首要的原则就是根据实际需要,另一方面还要考虑游戏开发预算。
现在常用的数据库有:SQL Server、My SQL、Oracle、FoxPro。
其中MySQL是一个完全免费的数据库系统,其功能也具备了标准数据库的功能,因此,在独立制作时,建议使用。
Oracle虽然功能强劲,但它毕竟是为商业用途而存在的,目前很少在游戏中使用到。
oracle的关系型数据库特征简单说
关系型数据库管理系统(DBMS),是基于关系型数据库理论而开发的软件系统,目前有oracle,SQL Server, Access, MySQL及PostgreSQL等。
数据库管理系统用于建立,使用和维护数据库,对数据库进行统一的管理和控制,保证数据库的安全性和完整性的一套大型的电脑程序。
数据库管理系统功能:1 定义数据库结构:DBMS提供数据定义语言来定义(DDL)数据库结构,用来搭建数据库框架,并被保存在数据字典中。
2 存储数据库内容:DBMS提供数据操作语言(DML),实现对数据库数据的基本存取操作,即检索,插入,修改和删除等。
3 数据库的运行管理:DBMS提供数据控制功能,即数据的安全性,完整性和并发控制等,对数据库运行进行有效的控制和管理,以确保数据正确有效。
4 数据库的建立和维护:包括数据库的初始数据的装入,数据库的转储,恢复,重组织,系统性能监视,分析等功能。
5 数据库的传输:DBMS提供处理数据的传输,实现用户程序和DBMS之间的通信,通常与操作系统协调完成。
目前比较流行的两大类SQL语言分别是微软的T-SQL和oracle的PL/SQL。
SQL语言分两大类:1 DML数据操纵语言,主要是完成数据的增,删,改,查等操作。
2 DDL数据定义语言,主要用来创建或修改表,视图,存储过程及用户等。
3 DCL数据控制语言。
数据库管理员DBA,通常使用DDL来管理数据库的对象,而数据操纵语言DML则主要由数据库开发人员使用来操纵数据。
oracle 11g g表示的是网格Grid,因为oracle数据库系统是一个网格的数据库管理系统。
网格是指通过众多独立的,可以模块化的软硬件进行连接和重组,提供网状的企业信息系统,他是一种具有弹性的体系结构,可以满足复杂的,多元化的计算需求。
oracle数据库系统有两种主要的使用形式:客户端/服务器端体系结构和多层结构。
目前使用最多的是客户端/服务器端结构,整个数据库系统分为两个部分:客户端和服务器端。
1 客户端:一个数据库应用程序,比如使用oracle数据库的ERP系统,或者是用来开发PL/SQL的开发工具。
客户端负责请求,处理,展现由数据库服务器管理的数据。
运行客户端的计算机可以针对它自身的工作进行优化。
2 服务器端:服务器运行oracle数据库管理软件,处理并发,共享的数据访问。
数据库服务器接收,处理由客户端应用程序提交的SQL或PL/SQL语句。
oracle 11g体系结构:一个oracle数据库服务器包括两个方面:1 存储oracle数据的物理数据库,即保存oracle数据库数据的一系列物理文件,包括控制文件,数据文件,日志文件和其他文件。
关系型数据库中的数据组织分为两个层次:逻辑层和物理层。
在逻辑层上,oracle将数据组织成表,行和列。
一个关系型数据库的关键性是将数据的逻辑组织与数据的物理存储分开。
逻辑存储:(1)表空间:作用是在物理存储和逻辑表之间建立中介。
每个表或索引,在创建时都放在一个表空间中。
表空间可以包含一个或多个表或索引,或者表和索引可分布到多个表空间中。
表空间是oracle数据库里的基础管理单元。
可以使用一个表空间在线或离线,或备份和恢复一个表空间。
可以使一个表空间只读以防止对表空间的写操作。
(2)段和区域:数据库中每个对象都存储在段中,段是区域的集合。
数据块存储在区域中。
区域是一个磁盘存储的连续片 (3)分区:可以使用分区将数据分散在多个表空间中。
分区是将表或索引中的值将表或索引中的数据分离的方式。
当创建表或索引时定义分区。
因为表的每个分区可以放置在不同的表空间中,可以对一个单独的分区进行维护,如备份与恢复或移动表空间。
2 oracle实例:这是物理数据库和用户之间的一个中间层,用来分配内存,运行各种后台进程,这些分配的内存区和后台进程统称为oracle实例。
当用户在客户端连接并使用数据库时,实际上是连接到该数据库的实例,由实例来连接,使用数据库。
实例不是数据库,数据库是指用于存储数据的物理结构,总是实际存在的。
而实例是由操作系统的内存结构和一系列进程组成的,可以对实例进行启动和关闭。
在oracle中,实例是由一系列的进程和服务组成的,与数据库可以是一对一的关系,也就是说一个实例可以管理一个数据库;也可以是多对一的关系,也就是说多个实例可以管理一个数据库,其中多个实例组成一个数据库的架构称为集群,简称RAC,全程为oracle real application clusters.RAC实例共享一个通用的数据源,这些源允许RAC提供更强的数据库功能,可扩展性增强,同时提供了更高的可利用层次。
(1)支持实例的文件 初始化文件:许多参数影响oracle实例的操作方式,这些参数的初始值保存在一个初始化文件中。
控制文件:用来保存实例的关键信息,例如实例名,数据库创建的时间以及数据库备份和日志文件的状态。
重做日志文件:关系型数据库的重要特征之一是:在事件失败的情况下也能恢复到逻辑一致的状态,使用重做日志文件集。
这些文件跟踪数据库内的每个交互操作,在数据库失败事件中,管理员可通过重新存储最近的备份,在应用重做日志文件,重新执行用户与数据库交互,进行恢复数据库。
回滚段:使用...
简述oracle数据库系统的体系结构特点
展开全部 1、从兼容性,容灾机制(集群),锁,权限分配管理这些方面来说,ORACLE做的还算可以2、当并发性操作的时候,性能就不是太好了,用于做统计和分析的时候,性能方面要比teradata差很多3、最重要的是ORACLE技术相对开放,市面上有很多的书,ORACLE好的人也很多,但是有些数据库市面上可用资源就相当少了个人意见,仅供参考...
ORACLE数据库的新特性是什么?
一、 分区概述: 为了简化数据库大表的管理,ORACLE8推出了分区选项。
分区将表分离在若干不同的表空间上,用分而治之的方法来支撑无限膨胀的大表,给大表在物理一级的可管理性。
将大表分割成较小的分区可以改善表的维护、备份、恢复、事务及查询性能。
针对当前社保及电信行业的大量日常业务数据,可以推荐使用 ORACLE8的该选项。
二、分区的优点: 1 、增强可用性:如果表的一个分区由于系统故障而不能使用,表的其余好的分区仍然可以使用; 2 、减少关闭时间:如果系统故障只影响表的一部分分区,那么只有这部分分区需要修复,故能比整个大表修复花的时间更少; 3 、维护轻松:如果需要重建表,独立管理每个分区比管理单个大表要轻松得多; 4 、均衡I/O:可以把表的不同分区分配到不同的磁盘来平衡I/O改善性能; 5 、改善性能:对大表的查询、增加、修改等操作可以分解到表的不同分区来并行执行,可使运行速度更快; 6 、分区对用户透明,最终用户感觉不到分区的存在。
三、分区的管理: 1 、分区表的建立: 某公司的每年产生巨大的销售记录,DBA向公司建议每季度的数据放在一个分区内,以下示范的是该公司1999年的数据(假设每月产生30M的数据),操作如下: STEP 1、建立表的各个分区的表空间: CREATE TABLESPACE ts_sale1999q1 DATAFILE '/u1/oradata/sales/sales1999_q1.dat' SIZE 100M DEFAULT STORAGE (INITIAL 30m NEXT 30m MINEXTENTS 3 PCTINCREASE 0) CREATE TABLESPACE ts_sale1999q2 DATAFILE '/u1/oradata/sales/sales1999_q2.dat' SIZE 100M DEFAULT STORAGE (INITIAL 30m NEXT 30m MINEXTENTS 3 PCTINCREASE 0) CREATE TABLESPACE ts_sale1999q3 DATAFILE '/u1/oradata/sales/sales1999_q3.dat' SIZE 100M DEFAULT STORAGE (INITIAL 30m NEXT 30m MINEXTENTS 3 PCTINCREASE 0) CREATE TABLESPACE ts_sale1999q4 DATAFILE '/u1/oradata/sales/sales1999_q4.dat' SIZE 100M DEFAULT STORAGE (INITIAL 30m NEXT 30m MINEXTENTS 3 PCTINCREASE 0) STEP 2、建立基于分区的表: CREATE TABLE sales (invoice_no NUMBER, ... sale_date DATE NOT NULL ) PARTITION BY RANGE (sale_date) (PARTITION sales1999_q1 VALUES LESS THAN (TO_DATE('1999-04-01','YYYY-MM-DD') TABLESPACE ts_sale1999q1, PARTITION sales1999_q2 VALUES LESS THAN (TO_DATE('1999-07-01','YYYY-MM-DD') TABLESPACE ts_sale1999q2, PARTITION sales1999_q3 VALUES LESS THAN (TO_DATE('1999-10-01','YYYY-MM-DD') TABLESPACE ts_sale1999q3, PARTITION sales1999_q4 VALUES LESS THAN (TO_DATE('2000-01-01','YYYY-MM-DD') TABLESPACE ts_sale1999q4 );
oracle 数据库的优势在哪
你好,由oracle公司开发的,面向internet计算的,支技关系对象型的,分布式的数据库产品。
是一个高度集的互联网应用平台,为企业数据数据存储提交高性能的数据管理系统。
Oracle数据库的主要特点:1、支持多用户、大事务量的事务处理2、数据安全性和完整性控制3、支持分布式数据处理4、可移植性5、Oracle数据库基于客户端/服务器技术
急。
。
急。
。
急。
。
。
目前使用较普遍的数据库软件有哪些?各自有什...
流行数据库的比较 目前,流行的(通过销售来衡量)强大的主流数据库引擎正在减少。
两年前,有六个重要的数据库引擎:Informix,Sybase,微软公司的SQL Server,IBM公司的DB2,Oracle和微软公司的Jet(用于Access)。
而今天,只有最后四个成为主要竞争者。
在过去的两年中,Informix和Sybase已经逐渐从人们视野中消失。
Informix Informix已经逐渐失去了市场份额,并且最终被IBM收购了。
一件看起来不太可能的事情是:蓝色巨人并不说服Informix的用户转向DB2,而是采取了其他的策略。
所以,我们预测Informix从现在起将会更快地消失。
Sybase 和 SQL server Sybase的历史很奇特。
它起初销量很好,之后,Sybase与微软形成了伙伴关系,从而使两个公司互相共享源代码。
然而这种关系逐渐消失了,并最终以某种难以解决的分歧而结束。
Sybase保留了Sybase引擎,而两个公司都用同样的源代码的拷贝向前发展。
微软从那以后投入了上百万美元开发SQL Server;公正的说,Sybase的投入相对较少。
结果Sybase的产品没有吸引力,它的前途看上去很黯淡。
(这个故事的寓意是:如果你与微软打交道,那么请相信,从开始到退出的整个过程中,你将会损失大量的钱)。
微软一直使用Sybase的源代码作为SQL Server的基础,在发展到SQL Server6.5版本的过程中,有段并行开发的时期。
尽管SQL Server从Sybase的中得到了大量的经验,但是,渐渐地,它不再满足于仅仅继承代码了。
当SQL Server7.0发布时,微软宣布已经重写了70%的内部代码,但实际上并非如此:当SQL Server2000发布时,微软承认7.0版本已经100%的进行重写了。
表面上,这个“真实情况”是毫无意义的,因为如果6.5版本已经差得需要完全重写,那么微软应该为他们的成果而自豪了。
但这忽略了DBA(数据库管理员)的习惯,没人愿意第一次就升级到完全重写过的产品上。
结果,6.5版本成了一条狗(如果你仔细听,能听到它的叫声),7.0版本是值得注意的优秀的数据库引擎,而2000版本又在这个基础上进行了改进。
DB2 IBM的DB2是最早的,而且是保留下来的最好的关系数据库引擎之一。
它最初是在大型机上开发的,从那以后逐渐转移到其他的平台上,例如NT和Linux平台上都有不错的版本。
DB2甚至能运行在Windows CE上。
直到1996年前,它一直被动地增加功能和升级。
那时,由Janet Perna领导的IBM的一个分部宣布其产品必须跟随时代的变化,结果DB2 UDB5.0版进行了转换。
实际上,它在易用性上战胜了微软。
从那以后,它轻松地稳步向前。
结果,DB2非常强大而且易于使用。
它在出售时是最成熟的孩子。
Oracle Oracle几乎与DB2一样成熟,它作为高端产品有很好的声望:那些富裕的公司是为了想要最好的、最强大的、最可靠的数据库才买了Oracle产品。
Oracle产品总是很昂贵,Oracle有资格的DBA也是如此。
但是你付了钱,你就在许多方面得到了安全性。
这种方式是否适合商业模式还值得揣摩。
Acess 微软的Jet引擎逐渐占领了Windows平台。
然而,Jet的不祥之兆出现了。
因为首先,Access允许你创建使用SQL Server引擎的项目文件:MSDE(微软数据库引擎)的一个版本。
其次有许多迹象表明,微软想在接下来的几年中把SQL Server嵌入到操作系统中,这将使Jet逐步淘汰。
在过去的应用中,我已经大量使用Jet,但我以后将不得不把他们转到MSDE中。
综上所述 OK,你可以选择一个主流产品或是一般的产品。
在你进行最终的决定之前,有七种不同的数据库指标值得你去考虑:性能、可扩展性、可用性、平台、价格、特点最后是生存周期。
毫无疑问前面所述的第一条规则在这里起了作用。
如果你需要大量的操作和用户,那么你必须在大型数据库引擎上投资。
下一个问题是:大型数据库引擎DB2、Oracle、SQL Server这三个中哪一个是最快、可扩展性最好呢?这个问题已经讨论了好多年了,而且不同的公司也花了数百万的投入来证实他们的产品是最快的。
性能、可扩展性、可用性测试数据库速度,最好最公正的毫无疑问是事务处理协会(TPC www.tpc.org),目前SQL Server最快,其次是DB2,Oracle排在第三。
而可扩展性上,IBM的DB2可以运行在每个平台上,从Windows CE到大型机,可以肯定的说,它是可扩展性最强的,但是我在这提出一种偏激的观点,尽管这些指标参数非常流行,但这个问题变得越来越没有意义。
在过去的这些年所获得的性能上的改进说明,前三个公司的中任何一个都有足够的能力来提供比大多数应用程序所需要的更好的速度、可扩展性以及性能。
例如,微软在过去的几年中接受关于可扩展性方面的很多批评,它最近已经产生了1TB数据作为源数据的OLAP立方体。
对大多数人来说,这已经足够了。
因此,尽管在过去,这三项数据库指标发挥了巨大的作用,但是在今天,当最便宜的、速度更快的处理器出现时,评价数据库时有必要选择其他的一些标准。
在大型的数据库产品中,IBM毫无疑问占领了大型机的市场,而且目前还没有竞争对手。
有人预测大型机市场要减弱,但是目前还没有:IBM似乎目前仍是难以攻破的,而且IBM认为这个市场正显示了...
常用的数据库软件有哪几种,都有什么特点?
2. Oracle真正实现了行级锁,SQLServer也宣称实现了行级锁,但你实际去试,如果不加索引,其实是不行的。
3. Oracle因为有多版本数据的技术,读写操作不会相互等待,虽然SQLServer 2005学习Oracle增加了snapshot机制,从而也引进了多版本数据(MySQL也有多版本数据机制,不能说一定是学习Oracle),但是实际效果感觉就是2个版本的数据,隔离级别为read committed时候,读写不再相互等待,但是把隔离设置为Serializable还是会产生读写相互等待。
4. Oracle的事务日志归档相当方便,而SQLServer要用事务日志备份来实现,而且还要配置自动作业,启动agent服务。
5. Oracle的数据字典丰富,使得DBA容易判断数据库的各种情况,虽然SQLServer 2005学习了Oracle的数据字典的特点,但从数量及方便程度上还是相差太多。
个人感觉这是Oracle最人性化的地方。
6. Oracle的PL/SQL比SQLServer的T-SQL功能强大很多。
7. Oracle的触发器比SQLServer的种类多几种。
8. oracle的备份恢复原理相当简单明了,备份就在操作系统上拷贝数据文件好了,恢复呢,再拷贝回来,数据是旧的,不怕,应用重做日志好了。
SQLServer呢,虽然原理在本质上还是这些,但操作起来麻烦多了,麻烦到让你体会不到其本质。
9. Oracle数据库启动可以有多个阶段,使得DBA可以在不同的情况下,通过启动到特定的阶段解决一些特殊问题,而SQLServer只要服务一启动,所有数据库就都打开了。
10.SQLServer给人的感觉是简单易用,但是我要说,如果你继续向前走,就会发现SQLServer的体系结构相当复杂(注意我这里是说的复杂),大体还是沿袭的Sybase的体系结构,这种复杂结构,估计很难有根本性的改变,而Oracle呢,时间越长你越会觉得其体系结构严谨,虽然开始会感觉很难。
我的一个比喻,SQLServer是傻瓜相机(就是那些一两千的小数码),Oracle是单反相机(40D,5D,D300),如果你是入门者,那用傻瓜相机好了,在各种环境下拍摄,基本都过得去,用单反,光圈、快门都要自己设定,反倒不如傻瓜相机的效果,如果你是高手了,那傻瓜相机就很难得心应手了。
11.Oracle的书籍一般都比较深,随便一说就是一大批,EpertOracle、PracticalOracle8i、Cost-basedOracle,SQLServer呢,恐怕只有那套InsideSQLServer了,虽然SQLServer的书籍数量比Oracle的多的多(特别是在国内),但多数都是stepbystep的入门书。
12. 对比SQL*Plus与sqlcmd(或2000的osql,6.5的isql),sqlcmd的功能是太简陋,差得太多了。
13. SQLServer的最大优点就是和Windows结合紧密,易用,但是要注意事情都是两面的,这些优点可能导致其致命的缺点,例如易用,使得搞SQLServer的人可以不求甚解,有时候不求甚解是没问题的,但是有时候不求甚解可能会造成灾难,特别是对搞数据库的人来说。
不好意思,本来要说SQLServer的优点呢,最后也成了缺点了。
转载请注明出处51数据库 » 列举oracle数据库软件的特点