展望2011

2007-03-27 | Sybase数据库简介【转】

上一篇 / 下一篇  2007-04-27 22:28:05 / 个人分类:数据库

T/X,@2wA `#zq0一、Sybase数据库简介 

l#E*b SF!X#Z051Testing软件测试网/Q sJn)Nw

1.版本

s)CR^P#]#t051Testing软件测试网"L X zT ~W

1984年,Mark B. Hiffman和Robert Epstern创建了Sybase公司,并在1987年推出了Sybase数据库产品。SYBASE主要有三种版本,一是UNIX操作系统下运行的版本,二是Novell Netware环境下运行的版本,三是Windows NT环境下运行的版本。现在最新版本已经是 12.5,在各主流Unix操作系统中均有广泛应用。IBM AIX,HP unix,Digital Unix,Sun solaris等等。

(Cw,O Z2g%rlh0uy0

t-qs {6O!uUu2f02.Sybase数据库的特点 51Testing软件测试网,Y*[!`gmC

#@~%u!|Ph/q0(1)它是基于客户/服务器体系结构的数据库 
.bE^MB)pV,}051Testing软件测试网7N3` ~a3b8k uW q
一般的关系数据库都是基于主/从式的模型的。在主/从式的结构中,所有的应用都运行在一台机器上。用户只是通过终端发命令或简单地查看应用运行的结果。 而在客户/服务器结构中,应用被分在了多台机器上运行。一台机器是另一个系统的客户,或是另外一些机器的服务器。这些机器通过局域网或广域网联接起来。客户/服务器模型的好处是: 51Testing软件测试网k*l3\/O!N

Y jpb8^q;h0● 它支持共享资源且在多台设备间平衡负载 
wW}9] } vg v051Testing软件测试网3| F Qd2p h
● 允许容纳多个主机的环境,充分利用了企业已有的各种系统 
51Testing软件测试网Oebf sG1u

)t%Sn_Vg+D0(2) 它是真正开放的数据库 51Testing软件测试网)L X U]Bo-v4[%h2Dd,J

51Testing软件测试网0kW`,t6E2\qJB

由于采用了客户/服务器结构,应用被分在了多台机器上运行。更进一步,运行在客户端的应用不必是Sybase公司的产品。对于一般的关系数据库,为了让其它语言编写的应用能够访问数据库,提供了预编译。Sybase数据库,不只是简单地提供了预编译,而且公开了应用程序接口DB-LIB,鼓励第三方编写DB-LIB接口。由于开放的客户DB-LIB允许在不同的平台使用完全相同的调用,因而使得访问DB-LIB的应用程序很容易从一个平台向另一个平台移植。

4Z*Qs1u@P051Testing软件测试网5Y W]S f's

(3) 它是一种高性能的数据库 
^4Q L%hC#_'R9p%H051Testing软件测试网 ["ps+M0C
Sybase真正吸引人的地方还是它的高性能。体现在以下几方面: 
`Y%b3b?yMWp051Testing软件测试网B2r"`&h0fO
● 可编程数据库 51Testing软件测试网5OfU4s$d)|}l;n5\
51Testing软件测试网e%u yx"h o3|
通过提供存储过程,创建了一个可编程数据库。存储过程允许用户编写自己的数据库子例程。这些子例程是经过预编译的,因此不必为每次调用都进行编译、优化、生成查询规划,因而查询速度要快得多。 
+R Da1JzE1VF0
]'b~Iwoy0● 事件驱动的触发器 51Testing软件测试网2j.~!Y9T0m%Z!J5v

oh-J:Q _0触发器是一种特殊的存储过程。通过触发器可以启动另一个存储过程,从而确保数据库的完整性。 51Testing软件测试网8HUZ1ni L9x,`B
51Testing软件测试网:EUB$w@,HG
● 多线索化 51Testing软件测试网e6m-A/c;o-H"XV8i
51Testing软件测试网4p'`/p{5Q$H
Sybase数据库的体系结构的另一个创新之处就是多线索化。一般的数据库都依靠操作系统来管理与数据库的连接。当有多个用户连接时,系统的性能会大幅度下降。Sybase数据库不让操作系统来管理进程,把与数据库的连接当作自己的一部分来管理。此外,Sybase的数据库引擎还代替操作系统来管理一部分硬件资源,如端口、内存、硬盘,绕过了操作系统这一环节,提高了性能。
51Testing软件测试网z A;RYCQ9G)F

sS m#Ka;M5h03.Sybase数据库的组成51Testing软件测试网-z:HAw s(_B?B

51Testing软件测试网]o9y D"A-\ Q

Sybase数据库主要由三部分组成:

n~#K vne0

c/PT2T^*h*qtL0(1) 进行数据库管理和维护的一个联机的关系数据库管理系统Sybase SQL Server; 
;i8H@-m&~)o;I051Testing软件测试网)k6mE4D4H;_$b ?H"SZ
Sybase SQL Server是个可编程的数据库管理系统,它是整个Sybase产品的核心软件,起着数据管理、高速缓冲管理、事务管理的作用。

;i(tVI.]%CF m#H0

!sR1Xc:au0(2) 支持数据库应用系统的建立与开发的一组前端工具Sybase SQL Toolset; 
+D_q,`~ACF1fK0
l:s l![ ]p H4D0ISQL是与SQL Server进行交互的一种SQL句法分析器。ISQL接收用户发出的SQL语言,将其发送给SQL Server,并将结果以形式化的方式显示在用户的标准输出上。

9kj |*w"rP+E}(g3F9A051Testing软件测试网6S_}Df4~_:^k

DWB是数据工作台,是Sybase SQL Toolset的一个主要组成部分,它的作用在于使用户能够设置和管理SQL Server上的数据库,并且为用户提供一种对数据库的信息执行添加、更新和检索等操作的简便方法。在DWB中能完成ISQL的所有功能,且由于DWB是基于窗口和菜单的,因此操作比ISQL简单,是一种方便实用的数据库管理工具。 
3UuCj `e&w0
y;gv^Dk-u0APT是Sybase客户软件部分的主要产品之一,也是从事实际应用开发的主要环境。APT工作台是用于建立应用程序的工具集,可以创建从非常简单到非常复杂的应用程序,它主要用于开发基于表格(Form)的应用。其用户界面采用窗口和菜单驱动方式,通过一系列的选择完成表格(Form)、菜单和处理的开发。

LUvY8e0

})ui ^ k Y)f2P Z0(3) 可把异构环境下其它厂商的应用软件和任何类型的数据连接在一起的接口Sybase Open Client/Open Server。 51Testing软件测试网3x.UY)Jbi\ M1u]f0g

])[ZI\#zU0通过Open Client的DB-LIB库,应用程序可以访问SQL Server。而通过Open Server的SERVER-LIB,应用程序可以访问其它的数据库管理系统。 51Testing软件测试网$~a5cUC-o

:}#}t q!c#qG0
二、SYBASE有关概念 51Testing软件测试网`A5ed7m
51Testing软件测试网B[7jnXBp#Rj
51Testing软件测试网2h,K};Td8@
51Testing软件测试网6vBtjo3h
Sybase SQL Server是一个多库数据库系统。这些数据库包括系统数据库和用户数据库。 而不论是系统数据库还是用户数据库,都建立在数据库设备上。 

+N4e~,j)kS*WNh-xp ^0

7NS_'Nq:Rz!w01. 数据库设备 51Testing软件测试网3c m$j9dy(rf

51Testing软件测试网;]"NAz0T'M+l}\*S a

所有的数据库都创建在数据库设备上。所谓数据库设备,不是指一个可识别的物理设备,而是指用于存储数据库和数据库对象的磁盘原始分区或操作系统文件。增加一个新的数据库设备时,必须对这些设备“初始化”。初始化的过程就是将物理磁盘、磁盘分区或操作系统文件变为SYBASE数据库可以识别的设备。初始化数据库设备使用DISK INIT命令: 51Testing软件测试网RJ2a7F gW

Y9e+k*e`0DISK INIT 51Testing软件测试网SA!Z2p(o2d5z
51Testing软件测试网J3E;a(?^zYC`
NAME=设备名, 51Testing软件测试网m pM,mF7x%Z
51Testing软件测试网x&^&c*ML~&q F/x
PHYSNAME=物理设备名, 51Testing软件测试网*U"l p2BX f}
51Testing软件测试网#S#h3w%m#K4d$u
VDEVNO=虚拟设备号, 51Testing软件测试网:lF*g9H~
51Testing软件测试网3Mqx(q%lB1S
SIZE=块数 
tX"t3usc051Testing软件测试网:t`-kY1~^ w
其中,NAME指数据库设备名,此名将用于CREATE DATABASE和ALTER DATABASE命令。PHYSNAME是原始磁盘分区或操作系统文件名。VDEVNO是数据库设备的标识号,在SQL Server中,它必须是唯一的。SIZE的单位是2K的块,对于新创建的数据库,最小的SIZE是model数据库的尺寸,即1024个2K的块(2M)。 
bLO1B1Q~{(EB051Testing软件测试网mq,[s1T&O/|
例如:/*将/dev目录下400M的物理设备初始化为SYBASE的数据库设备tele114_log01*/ 51Testing软件测试网ZkL5Q}Zg
51Testing软件测试网 |-Xnn\*Y;wD#k
1>disk init 
gm HryYHp0
`2Y(D P C x02>name=“tele114_log01”, 
cFzC3^-Bmx#r$^051Testing软件测试网,Cd"HT%n
3>physname=“/dev/rtelelog” 
Tq~2r/h+WW051Testing软件测试网 ^8|x6Ey O7wY+w!['iP
4>vdevno=4 
,htyA0u051Testing软件测试网_z?b%l#CM.R
5>size=204800 /*2Kbyte*204800=400Mbyte*/ 51Testing软件测试网4i!D}f/`:K

W"Wn)aM/G.n|6v*S:a06>go 

h])Ux.^&]"K1Q s\051Testing软件测试网Z/E~M(wl}"S_

2、段 51Testing软件测试网X8b V|:A7y

51Testing软件测试网bt"S*Y.p'Y_dO

数据库设备从逻辑上被划分为数据库段以允许将某一特定的对象放置在指定的段上(创建对象时指定),一数据库设备可拥有多达192个段,一段可使用255个逻辑设备上的存储空间。当用户创建一个数据库时,SQL SERVER 会自动在该数据库中创建三个段: SYSTEM、LOGSEGMENT 、DEFAULT,这三个段分别用来存储数据库的系统表、事务日志其他数据库对象 。51Testing软件测试网U0t6jZ d3X#nB}

Q$mwV h0在数据库中创建段的步骤是: 
~`2[] M"w!rq0
$sx ~Yb1Wcx T0x 先用Disk init 初始化物理设备 
RM @ On l7x051Testing软件测试网k$rB;?W%s#m
x 通过使用Create database 和alter database 的on 子句,使数据库设备对数据库可用,于是新设备自动增加到数据库的default 和system段。 51Testing软件测试网GT8O8F DL+i
51Testing软件测试网 n }+OL7x-v
一旦数据库设备存在并对数据库可用,使用存储过程Sp_addsegment 定义数据库的段。语法如下: 
~'I\)jJo0
8S y eS)Z5DCCs0Sp_addsegment 段名,数据库名,设备名 

:h#A%L q4dB6a5@5| z O051Testing软件测试网W6t dp:W+k)m

3、 系统数据库 

i#n7|9F]].Za-Vz7F051Testing软件测试网t!f+Z0YBvU

安装Sybase数据库时自动生成的下列系统数据库: 
6A&\&R)~(eq0
uc/If-|P5iy0● 主数据库master; 51Testing软件测试网]"Uwf `'@k'U^)F
51Testing软件测试网;Su.}Q~ e8E:bz
● 模型数据库model; 51Testing软件测试网+z9zrbU3S3~ncUt
51Testing软件测试网k;F"`*uh6D
● 系统过程数据库sybsystemprocs; 
#P|VMPOqHE"}051Testing软件测试网\"E1p])eEt,Ep
● 临时数据库tempdb。 51Testing软件测试网BP9q1P7rl1W

8K8i.Lh"o5@)[ ^e0也可选择下列数据库: 
xSM6J(v+CfCW051Testing软件测试网@"x*D X"y `+H
● 安全审核数据库sybsecurity; 51Testing软件测试网Mi[b+Ng,j
51Testing软件测试网lJ H2h%r^NO
● 示例数据库pubs2; 51Testing软件测试网]]%B1r s/V CNG C

5Df?\0aKb0● 命令语法数据库sybsyntax。 

k:b9d,U&y4\?s051Testing软件测试网f3m nB!^K

(1) master数据库 51Testing软件测试网fj0\!f(E:Jp,y v I

{0X4}fct%[P'KkJ0包含许多系统表和系统过程,从总体上控制用户数据库和SQL Server的操作,构成了SYBASE系统的数据字典。MASTER数据库主要记录信息为: 
-R+BK/Y*GA.gn8mF R:E0
r%Ke8I$P&vUk0● 登录帐号(SQL服务器用户名);syslogins,sysremolelogins 51Testing软件测试网q"e}g'p]2|

$N)@7jn?P$m0● 正在执行的过程;sysprocesses 
Om#wt6E5u N0
pSy{0vW$r+X0● 可修改的环境变量;sysconfigures 
+E.WXC"sY0{GS9\-Z051Testing软件测试网P5h+vt c2~{0D
● 系统错误信息;sysmessages 
y*Y j%z$A-Q1a0
~qAe6L5or2Ye0● SQL服务器上每个数据库的信息;sysdatabases 51Testing软件测试网WJ8r#a Z&G.l2q
51Testing软件测试网 y2y{7[7bl5Er
● 每个数据库占用的存储空间;sysusages 51Testing软件测试网 y1j)p8T!F lu
51Testing软件测试网$b#JAX,X2[|.u
● 系统上安装的磁带及磁带信息;sysdevices 
[,sm.]Q9r i%D051Testing软件测试网8P1MvZD\U
● 活动锁信息;syslocks 
51Testing软件测试网{d g![-S8m

;JrkQ/q"K'_051Testing软件测试网 o oI]c'\9wc
51Testing软件测试网!` R.\?Ik/B

bN@$\l$F+wP0

f7g n,S(vU?f0(2) model数据库 
|f8GB*s#fnx051Testing软件测试网6q Bu#W }ZB
提供了新用户数据库的初型。当我们每次用CREATE DATABASE命令 时,SQL Server都产生一个model数据库的拷贝,然后把它扩展到命令要求的尺寸。如果我们修改了model数据库,那么以后新创建的数据库都将随它而改变。下面是几个通常用到的对model数据库的改变: 
`0h"qV RfbR0
}*G*s{5D(Y@4rg6m0● 增加用户数据库类型、规则或缺省; 51Testing软件测试网 p-xH!P$Z)Vx

r\ | t6{u l0● 可存取SQL Server上所有数据库的用户用sp_adduser增加到model数据库上; 
3bOyy3K t"k'w0
9z.i6trh US ym3C0● 缺省权限(特别是guest帐号)可在model中建立; 51Testing软件测试网O)T5bS.Wy-D

:_T_vM0Q0\0● 诸如select into/bulkcopy那样的数据库选项可在model中设置。这些设置反映到所有新创建的数据库中。它们在model中最原始的值是关(off)。 

^ `,[+f T/C-|9Tg0

&K&u!M!M5].h Q1P051Testing软件测试网FBB.oJ8pc:t u?J

在一般情况下,大多数用户无权修改model数据库,又没被授权读取。因为model中所有内容已拷贝到新数据库中,授权读model没什么意

^ Fz s/{G0

TAG: sybase 数据库

snowlocusfly的个人空间 引用 删除 snowlocusfly   /   2010-07-27 13:53:18
5
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar