展望2011

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

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

51Testing软件测试网&B(u@%fOb

一、Sybase数据库简介 

G(s_]4m+OW051Testing软件测试网%xz7g@8F(Y Ry~

1.版本

H$m%E RNj;nx051Testing软件测试网Z l{&M }KH8t5B \{ M [$L

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等等。

B,LaZa)[j$@ f0

5FeR3tLYAe T"k?02.Sybase数据库的特点 51Testing软件测试网]o_5o2]\$o]y

h'q3d4w5C1q\ ]0(1)它是基于客户/服务器体系结构的数据库 
Y3O,Z,pV-n Wh0
OA^ih2y9h0一般的关系数据库都是基于主/从式的模型的。在主/从式的结构中,所有的应用都运行在一台机器上。用户只是通过终端发命令或简单地查看应用运行的结果。 而在客户/服务器结构中,应用被分在了多台机器上运行。一台机器是另一个系统的客户,或是另外一些机器的服务器。这些机器通过局域网或广域网联接起来。客户/服务器模型的好处是: 
"e+[x.|4Z0
.M:E#K_h0Q*B[0● 它支持共享资源且在多台设备间平衡负载 51Testing软件测试网ym b!K{d
51Testing软件测试网1^9v8}{ uM
● 允许容纳多个主机的环境,充分利用了企业已有的各种系统 

[+ld0m,dqE x?0

7V;^C&X t4K t'p2`0(2) 它是真正开放的数据库 51Testing软件测试网!{Y ARk!]

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

1Gf5zc(l$w;`_051Testing软件测试网2_6{'q2ESW-j,g/cP

(3) 它是一种高性能的数据库 51Testing软件测试网:z8IP R.^

%tp7lZ S*R~1Cn0Sybase真正吸引人的地方还是它的高性能。体现在以下几方面: 
Ml~Orj\o051Testing软件测试网3TnQFZ4[!A$t:^
● 可编程数据库 51Testing软件测试网^0Tx_$U(Yq M5z

C`N0rDd&b(K#^0通过提供存储过程,创建了一个可编程数据库。存储过程允许用户编写自己的数据库子例程。这些子例程是经过预编译的,因此不必为每次调用都进行编译、优化、生成查询规划,因而查询速度要快得多。 
f)E's o.Iz$~3IF051Testing软件测试网B v Hh u;Gj?Y
● 事件驱动的触发器 51Testing软件测试网 e8`9^0}"M,|;J5Y H B
51Testing软件测试网)t+M@$j {.F)?%i
触发器是一种特殊的存储过程。通过触发器可以启动另一个存储过程,从而确保数据库的完整性。 51Testing软件测试网_*sU6J:E s8PRoZ9I1x
51Testing软件测试网kxBA4X:AJ C.Q2v
● 多线索化 51Testing软件测试网C,b2Zs#A7pVt!o

zMPt)m l@0Sybase数据库的体系结构的另一个创新之处就是多线索化。一般的数据库都依靠操作系统来管理与数据库的连接。当有多个用户连接时,系统的性能会大幅度下降。Sybase数据库不让操作系统来管理进程,把与数据库的连接当作自己的一部分来管理。此外,Sybase的数据库引擎还代替操作系统来管理一部分硬件资源,如端口、内存、硬盘,绕过了操作系统这一环节,提高了性能。
51Testing软件测试网 ab?0trFT

51Testing软件测试网([NOA3A~

3.Sybase数据库的组成51Testing软件测试网6m4s By;R

O` L6Fn5A6z$F#t0Sybase数据库主要由三部分组成:51Testing软件测试网)C^A`n4cf

51Testing软件测试网t*kh.[ofr*x)D v*B

(1) 进行数据库管理和维护的一个联机的关系数据库管理系统Sybase SQL Server; 51Testing软件测试网pNF yv2Ut R

cI$N#f;{O0Sybase SQL Server是个可编程的数据库管理系统,它是整个Sybase产品的核心软件,起着数据管理、高速缓冲管理、事务管理的作用。

k0H,q+W bb#G-_i051Testing软件测试网e7@#|~'v4m^G;}!t

(2) 支持数据库应用系统的建立与开发的一组前端工具Sybase SQL Toolset; 
.|;m0R a*hrLZ^051Testing软件测试网gs \\V
ISQL是与SQL Server进行交互的一种SQL句法分析器。ISQL接收用户发出的SQL语言,将其发送给SQL Server,并将结果以形式化的方式显示在用户的标准输出上。
51Testing软件测试网2YT },i Tu5Yv%yV(f"A

51Testing软件测试网@+E#dCDP8s6ro1lP

DWB是数据工作台,是Sybase SQL Toolset的一个主要组成部分,它的作用在于使用户能够设置和管理SQL Server上的数据库,并且为用户提供一种对数据库的信息执行添加、更新和检索等操作的简便方法。在DWB中能完成ISQL的所有功能,且由于DWB是基于窗口和菜单的,因此操作比ISQL简单,是一种方便实用的数据库管理工具。 
A+]e6eR \)ox5i051Testing软件测试网 DD'?,l3HZ*~7rX
APT是Sybase客户软件部分的主要产品之一,也是从事实际应用开发的主要环境。APT工作台是用于建立应用程序的工具集,可以创建从非常简单到非常复杂的应用程序,它主要用于开发基于表格(Form)的应用。其用户界面采用窗口和菜单驱动方式,通过一系列的选择完成表格(Form)、菜单和处理的开发。
51Testing软件测试网1~g#B#M V+k P&{$e

FN Zf F.Vd-U+h5p0(3) 可把异构环境下其它厂商的应用软件和任何类型的数据连接在一起的接口Sybase Open Client/Open Server。 51Testing软件测试网9fQ9d oss
51Testing软件测试网gR/O_B|,l}
通过Open Client的DB-LIB库,应用程序可以访问SQL Server。而通过Open Server的SERVER-LIB,应用程序可以访问其它的数据库管理系统。 
0Y.FDf&w s@d"j051Testing软件测试网s8lz2jG
二、SYBASE有关概念 51Testing软件测试网0aKk:LiUFh
51Testing软件测试网2A KT J@Sb!_

+l"X/i"hI051Testing软件测试网 NeFt#CA0Z9cC5k R
Sybase SQL Server是一个多库数据库系统。这些数据库包括系统数据库和用户数据库。 而不论是系统数据库还是用户数据库,都建立在数据库设备上。 
51Testing软件测试网ErD)G3_(?[

51Testing软件测试网7v~.~j4||K^

1. 数据库设备 51Testing软件测试网 @-l`)S A7LL6~

51Testing软件测试网~G3~W5@ h

所有的数据库都创建在数据库设备上。所谓数据库设备,不是指一个可识别的物理设备,而是指用于存储数据库和数据库对象的磁盘原始分区或操作系统文件。增加一个新的数据库设备时,必须对这些设备“初始化”。初始化的过程就是将物理磁盘、磁盘分区或操作系统文件变为SYBASE数据库可以识别的设备。初始化数据库设备使用DISK INIT命令: 
3meo!w:waR O(G)F051Testing软件测试网u#yaO0kj{'wA2U
DISK INIT 
xl0l&W`H Rrp(G051Testing软件测试网hq4N6rE Z%Wo6|
NAME=设备名, 51Testing软件测试网3]KvOI+Wl;Ea

.wG2ri0I)J0PHYSNAME=物理设备名, 
)]JH8FG051Testing软件测试网?wf3S`.WD
VDEVNO=虚拟设备号, 
Zs,g7Z O.i:?:[4s*{051Testing软件测试网:qI9qr8A)o-K*f0Y7s
SIZE=块数 51Testing软件测试网}0?o L4tz
51Testing软件测试网{H~ D$D ktX
其中,NAME指数据库设备名,此名将用于CREATE DATABASE和ALTER DATABASE命令。PHYSNAME是原始磁盘分区或操作系统文件名。VDEVNO是数据库设备的标识号,在SQL Server中,它必须是唯一的。SIZE的单位是2K的块,对于新创建的数据库,最小的SIZE是model数据库的尺寸,即1024个2K的块(2M)。 
1Q{'E3_p0
Zc7[t V7I9t0例如:/*将/dev目录下400M的物理设备初始化为SYBASE的数据库设备tele114_log01*/ 
$F:@w9w}j%M0KiY U-[0
E i/F#rp3R.rr01>disk init 51Testing软件测试网2yh[Dd-QOSn5OA

*a'}qEB02>name=“tele114_log01”, 
%Z2VrKt![Nb051Testing软件测试网A:Z8{8vBj8OUw#p9N
3>physname=“/dev/rtelelog” 51Testing软件测试网*G1o;pR_6uE

@:e/u!td9J6V04>vdevno=4 51Testing软件测试网~]Vb%k y$l#m
51Testing软件测试网o*i)eRq:Q(o(RJ
5>size=204800 /*2Kbyte*204800=400Mbyte*/ 51Testing软件测试网*M x|1Q`t

)I u#{,am06>go 
51Testing软件测试网+O WXj V3E2S,G.o

51Testing软件测试网uI+AFt%f'?C

2、段 51Testing软件测试网{:h PGt]$NO-s l6@

51Testing软件测试网 QL2Od)\0M`

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

3`4E"gqvreCud0在数据库中创建段的步骤是: 51Testing软件测试网@\6PV`

&p@b&Eyu0x 先用Disk init 初始化物理设备 
H!h(aeK9T6M051Testing软件测试网Z2@8QczAF
x 通过使用Create database 和alter database 的on 子句,使数据库设备对数据库可用,于是新设备自动增加到数据库的default 和system段。 
/O3Ay#i7IWl v0
pL$}{8A:Y-j2?5G0一旦数据库设备存在并对数据库可用,使用存储过程Sp_addsegment 定义数据库的段。语法如下: 51Testing软件测试网6R2J X/z5E

;}Da2A$o kl0Sp_addsegment 段名,数据库名,设备名 

}W/j:\GL2a0

4L4Jc*R~ k03、 系统数据库 

W5sgMM5R a6fiu%[051Testing软件测试网;Mt5u1n?9smt hd

安装Sybase数据库时自动生成的下列系统数据库: 51Testing软件测试网"x$E^:RR{ ] T"_
51Testing软件测试网?l-F{T]0Y[xF]&h
● 主数据库master; 
q-F Z$ygGO ^051Testing软件测试网*cp#w ~n,Nzd`
● 模型数据库model; 
!F3F!WdGiI#t051Testing软件测试网4}zr"S9b3Y XNg
● 系统过程数据库sybsystemprocs; 
ma1I7Dq3WO g051Testing软件测试网$H8D'FDDC)UK0Q
● 临时数据库tempdb。 51Testing软件测试网[Gx$Et(C
51Testing软件测试网~ E d i)~ Av f
也可选择下列数据库: 
GpU iPYN^-bq0
~'f)yY#| |e0● 安全审核数据库sybsecurity; 51Testing软件测试网/W,{4v|$U5z(v
51Testing软件测试网NzeH rg%r
● 示例数据库pubs2; 51Testing软件测试网8\J3E(WS+C#U.Z6}

S @H8AX)F.W0● 命令语法数据库sybsyntax。 

qv;TsJ0

WC'B&Xt+JK0(1) master数据库 
#}&j[.r3I0
yG#od(g*E:ZG+me0包含许多系统表和系统过程,从总体上控制用户数据库和SQL Server的操作,构成了SYBASE系统的数据字典。MASTER数据库主要记录信息为: 51Testing软件测试网r4Up6`5^B T{S
51Testing软件测试网3J~D Xf"P
● 登录帐号(SQL服务器用户名);syslogins,sysremolelogins 51Testing软件测试网C!s Uu:JF
51Testing软件测试网'u0A@hP*K
● 正在执行的过程;sysprocesses 51Testing软件测试网&[ i ? d O;L2?4t#{-` `b
51Testing软件测试网'|l$c"hq:^"]
● 可修改的环境变量;sysconfigures 51Testing软件测试网}9ge?#uk%KF4X

2Gf@+h?1w1r0● 系统错误信息;sysmessages 
%hqn:AJ051Testing软件测试网*?2Pv!lf4v6_ L
● SQL服务器上每个数据库的信息;sysdatabases 51Testing软件测试网pi7G3l#I~

c+? B*G.a Q/S9^%E W-\'S0● 每个数据库占用的存储空间;sysusages 51Testing软件测试网 e t;U pF r4i2| E

R0mn;n/]4`i"A0● 系统上安装的磁带及磁带信息;sysdevices 
|8\9k1h hu!QsR051Testing软件测试网_'plol2R%L} K#H
● 活动锁信息;syslocks 
51Testing软件测试网` o?,[+R

d*@ SL2Y0
'~+q |#\vy VF0
51Testing软件测试网F&X4XT w?o7U

51Testing软件测试网 \d3a_@j

51Testing软件测试网]&{'iQ kn/V.m s

(2) model数据库 
g*L3|&o |f O051Testing软件测试网`&_6b1QX9[
提供了新用户数据库的初型。当我们每次用CREATE DATABASE命令 时,SQL Server都产生一个model数据库的拷贝,然后把它扩展到命令要求的尺寸。如果我们修改了model数据库,那么以后新创建的数据库都将随它而改变。下面是几个通常用到的对model数据库的改变: 51Testing软件测试网6cS"q,t{J
51Testing软件测试网3~3hsx h BC
● 增加用户数据库类型、规则或缺省; 51Testing软件测试网STc9Uk t[/E
51Testing软件测试网f1O@#f%k.R2D
● 可存取SQL Server上所有数据库的用户用sp_adduser增加到model数据库上; 
o}9i{4WV051Testing软件测试网5_k\"i|R-R
● 缺省权限(特别是guest帐号)可在model中建立; 
`q i&j&Z;\/m051Testing软件测试网HtF3~'S2K
● 诸如select into/bulkcopy那样的数据库选项可在model中设置。这些设置反映到所有新创建的数据库中。它们在model中最原始的值是关(off)。 
51Testing软件测试网zf%q-nr

HS(IP+}3U qA/a-W051Testing软件测试网'P.S|%?,|1O

在一般情况下,大多数用户无权修改model数据库,又没被授权读取。因为model中所有内容已拷贝到新数据库中,授权读model没什么意51Testing软件测试网;p,C~6GhmF-iH+]


TAG: sybase 数据库

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

评分:0

我来说两句

Open Toolbar