数据库是linux应用中的主要部份。Linux上的主要数据库包括:商业数据库:Oracle、Sybase、DB2、Informix;自由软件数据库:MySQL、PostgreSQL、Msql等。

商业数据库

因为商业数据库有挺好的技术支持,这儿只简单介绍一下。

(1)IBMDB2()

(2)Informix()Informix目前支持Linux是InformixSE,ESQL/C,Connect.

(3)Oracle()Oracle目前支持Linux的是Oralce8i、9i。

(4)Sybase()Sybase目前支持Linux的是AdaptiveServerEnterprise11.9.2。

(5)Ingres()CA目前支持Linux的是IngresII数据库.

自由软件数据库

1、MYSQL

Linux数据库系统_linux 查看数据库版本_商业数据库在Linux上使用

MysQL是日本的T.c.X公司负责开发和维护的,它是一个真正的多用户、多线程SQL数据库服务器。MysQL是以一个顾客机/服务器结构实现其功能的,它由一个服务器守护程序mysqld和好多不同的顾客程序和库组成。SQL是一种标准化的语言,它促使储存、更新和存取信息更轻易。MySQL主要特征是快速、健壮和易用。MySQL的官方发音是“MyEssQueEll”(不是MY-SEQUEL)。目前MySQL的最新版本是4.04,MySQL的网址是:,MySQL的标志是一个小鲸鱼。见图-1。

图-1

(1)MySQL的优点:

1.它使用的核心线程是完全多线程,支持多处理器。

2.有多种列类型:1、2、3、4、和8字节宽度自有符号/无符号整数、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、BLOB、DATE、TIME、DATETIME、TIMESTAMP、YEAR、和ENUM类型。

3.它通过一个高度优化的泛型实现SQL函数库并像她们能达到的一样快速linux系统镜像下载,一般在查询初始化后不该有任何显存分配。没有显存漏洞。

4.全面支持SQL的GROUPBY和ORDERBY谓词,支持聚合函数(COUNT()、COUNT(DISTINCT)、AVG()、STD()、SUM()、MAX()和MIN())。你可以在同一查询中混来自不同数据库的表。

5.支持ANSISQL的LEFT0UTERJOIN和ODBC。

linux 查看数据库版本_商业数据库在Linux上使用_Linux数据库系统

6.所有列都有缺省值。你可以用INSERT插入一个表列的子集,这些没用明晰给定值的列设置为她们的决省值。

7.MySQL可以工作在不同的平台上。支持C、C++、java、Perl、php、Python和TCLAPI。

(2)MySQL的缺点:

1、MySQL最大的缺点是其安全系统,主要是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变。

2、MySQL的另一个主要的缺陷之一是缺少标准的RI(ReferentialIntegrity-RI)机制;Rl限制的缺少(在给定数组域上的一种固定的范围限制)可以通过大量的数据类型来补偿。

3、MySQL没有一种储存过程(StoredProcedure)语言,这是对习惯于企业级数据库的程序员的最大限制。

4、MySQL不支持热备份。

5、MySQL的价钱随平台和安装方法变化。Linux的MySQL如果由用户自己或系统治理员而不是第三方安装则是免费的,第三方案则必须付许可费。Unix或Linux自行安装免费、Unix或Linux第三方安装200港元,

须要一个应用组件200欧元。

2、mSQL

linux 查看数据库版本_商业数据库在Linux上使用_Linux数据库系统

mSQL(miniSQL)是一个单用户数据库整治系统,个人使用免费,商业使用收费。因为它的短小精悍,使其开发的应用系统非凡遭到互联网用户追捧。mSQL(miniSQL)是一种大型的关系数据库,性能不是太好,对SQL语言的支持也不够完全,但在一些网路数据库应用中是足够了。因为mSQL较简单,在运行简单的SQL句子时速率比MySQL略快,而MySQL在线程和索引上下了工夫,运行复杂的SQL句子时比mSQL,PostgreSQL等都要快一些。MSQL的网址是:.au,最新版本是3.3。MSQL的标志是一个牛犊。见图-2。

图-2

安全性方面,mSQL通过ACL文件设定各主机上各用户的访问权限,缺省是全部可读/写。mSQL缺少ANSISQL的大多数特点linux查看操作系统,它仅仅实现了一个最最少的API,没有事务和参考完整性。mSQL与Lite(一种类似C的脚本语言,与分发一起发行)紧密结合,可以得到一个称为W3-mSQL的一个网站集成包linux 查看数据库版本,它是JDBC、ODBC、Perl和PHPAPI。

3、PostgreSQL

PostgreSQL是属于”对象-关连”式的数据库整治系统(ORDBMS)。PostgreSQL的前身称作Ingres,是于1977年至1985年间由着名的柏克莱学院所发展下来的。因为PostgreSQL是用C语言写成的。所以在不同的Unix平台上移植十分便捷。PostgreSQL可以在Linux、FreeBSD、SCOUnix、HPUnix、Solaris、AIX等平台上运行。PostgreSQ的网址是,最新版本是7.2。PostgreSQL的官方发音是:Post-gres-Q-L。PostgreSQ的标志是一个小象。见图-3

图-3

(1)PostgreSQL的主要优点:

1、对事务的支持与MySQL相比,经历了更为彻底的测试。

2、PostgreSQL支持储存过程,对于一个严厉的商业应拿来说,作为数据库本身,有诸多的商业逻辑的存在,此时使用储存过程可以在较少地降低数据库服务器的负担的前提下,对这样的商业逻辑进行封装,并可以借助数据库服务器本身的内在机制对储存过程的执行进行优化。据悉储存过程的存在也防止了在网路上大量的原始的SQL句子的传输,这样的优势是显而易见的。

3、PostgreSQL支持视图,视图的存在同样可以最大限度地借助数据库服务器内在的优化机制。并且对于视图权限的合理使用,事实上可以提供行级别的权限linux 查看数据库版本,这是MySQL的权限系统所未能实现的。

4、PostgreSQL支持触发器,触发器的存在不可防止的会影响数据库运行的效率,并且与此同时,触发器的存在也有利于对商业逻辑的封装,可以降低应用程序中对同一商业逻辑的重复控制。合理地使用触发器也有利于保证数据的完整性。

5、PostgreSQL支持约束。约束的作用更多地表现在对数据完整性的保证上,合理地使用约束,也可以降低编程的工作量。

6、PostgreSQL支持子查询。似乎在好多情况下在SQL句子中使用子查询效率低下,但是绝大多数情况下可以使用带条件的多表联接来代替子查询,并且子查询的存在在好多时侯依然不可防止。并且使用子查询的SQL句子与使用带条件的多表联接相比具有更高的程序可读性。

7、PostgreSQL支持R-trees这样可扩充的索引类型,可以更便捷地处理一些非凡数据。支持ODBC。

8、PostgreSQL可以更便捷地使用UDF(用户定义函数)进行扩充。

(2)PostgreSQL的主要缺点:

Linux数据库系统_linux 查看数据库版本_商业数据库在Linux上使用

1、PostgreSQL运行速率显著高于MySQL,由于MySQL使用了线程,而PostgreSQL使用的是进程。在不同线程之间的环境转换和访问公用的储存区域似乎要比在不同的进程之间要快得多。

2、PostgreSQL目前仍不完全适应24×7小时运行,这是由于你必须每隔一段时间运行一次VACUUM。

3、PostgreSQL在权限系统上不过健全。PostgreSQL只支持对于每一个用户在一个数据库上或一个数据表上的INSERT、SELECT和UPDATE/DELETE的授权,而MySQL答应你定义一整套的不同的数据级、表级和列级的权限。

4、由于PostgreSQL生成每页的速率要比MySQL慢,所以不足以拿来作高流量网站应用。Postgres没有与MySQL的mysql_insertid()等价的函数调用。如果在MySQL的数据库中插入一行数据,MySQL将返回这行主要害字的ID。

而在Postgres中完成这样一个操作须要绕许多圈子,如果大量应用都会增加效率。

5、PostgreSQL还缺乏一些比较高档的数据库整治系统须要的特点,例如对大对象的有效支持,以及查询缓冲等增强数据库性能的机制等。

Linux下的数据库系统还有一些,如dbm是linux下的一种非关系数据库,它实际上是文件方式的哈希表,每一对名子/值项称为一个记录.dbm有好几个版本,如ndbm,gdbm等。

总结:以上我们主要介绍了Linux环境下的一些主要的数据库,其他自由软件数据库还有Gadfly、BeagleSQL、BerkelyDB、GNUSQL等。你可以到网站查看更多的相关内容。

Tagged:
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复