sybase数据库入门知识培训_第1页
sybase数据库入门知识培训_第2页
sybase数据库入门知识培训_第3页
sybase数据库入门知识培训_第4页
sybase数据库入门知识培训_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Sybase数据库的基础知识培训入门知识培训Sybase数据库版本1984年,Mark

B.Hiffman和RobertEpstern创建了Sybase公司,并在1987年推出了Sybase数据库产品。SYBASE主要有三种版本,一是UNIX操作系统下运行的版本,二是NovellNetware环境下运行的版本,三是WindowsNT环境下运行的版本。现在最新版本已经是15.0,在各主流Unix操作系统中均有广泛应用。IBM

AIX,HPunix,Digital

Unix,Sun

solaris等等。我们公司主要使用11.92、12.0、12.5等版本。内容提要一、Sybase数据库的系统结构和原理二、Sybase数据库的安装与配置三、Sybase数据库的常用工具、常用命令、系统存储过程四、Sybase数据库的常用数据类型、常用函数系统结构和原理Sybase数据库的组成Sybase数据库主要由三部分组成进行数据库管理和维护的一个联机的关系数据库管理系统Sybase

SQL

Server;支持数据库应用系统的建立与开发的一组前端工具Sybase

SQL

Toolset;可把异构环境下其它厂商的应用软件和任何类型的数据连接在一起的接口SybaseOpen

Client/Open

Server;Sybase

SQL

Server概述SybaseSQLServer是个可编程的数据库管理系统,它是整个Sybase产品的核心软件,起着数据管理、高速缓冲管理、事务管理的作用。核心软件模块是ASE。SybaseAdaptiveServerEnterprise(ASE)是一种使用客户/服务器技术的关系数据库。ASE是机器上的一个进程,该进程控制所有必要的内存使用、磁盘访问、网络功能,以及操作系统进程或线程。ASE进程名称:主服务器进程

备份服务器进程dataserverbackupserverSybase

SQL

Server特点▲它是基于客户/服务器体系结构的数据库支持共享资源且在多台设备间平衡负载。允许容纳多个主机的环境,充分利用了企业已有的各种系统。▲它是真正开放的数据库公开了应用程序接口DB-LIB,鼓励第三方编写DB-LIB接口。由于开放的客户DB-LIB允许在不同的平台使用完全相同的调用,因而使得访问DB-LIB的应用程序很容易从一个平台向另一个平台移植。最新的开发库是CT-LIB。▲它是一种高性能的数据库

Sybase数据库的体系结构是多线索化的。Sybase数据库不让操作系统来管理进程,把与数据库的连接当作自己的一部分来管理。此外,Sybase的数据库引擎还代替操作系统来管理一部分硬件资源,如端口、内存、硬盘,绕过了操作系统这一环节,提高了性能。Sybase

SQL

Server数据库类型构成ASE操作的基本要素的系统数据库master数据库:ASE启动时候第一个联机的数据库。model数据库:创建新数据库时候作为一个模板使用的数据库。

tempdb数据库:保存临时的数据,中间结果,每次启动会清楚。

sybsystemprocs数据库:存放系统存储过程。

sybsystemdb:用于分布式事务的数据更改处理。特殊功能的数据库dbccdb数据库:用于dbcc命令的输出结果。sybsecurity数据库:审计功能数据库,必须在选择审计选项之前安装。

sybdiag数据库:专业技术人员使用和安装,用于调试。样本数据库pubs2数据库:可选。存放一些文档集中语法示例。

pubs3数据库:可选。存放一些文档集中语法示例。用户数据库自己创建的库,例如,test数据库系统数据库的创建系统数据库是强制安装的,是服务器运行时所必需的,并且是在安装AdaptiveServer时就创建的数据库。系统数据库主要包括:数据库系统表和其他所有数据库一样,master数据库包含一系列定义它自身结构的系统表。但是,与其他数据库不同,它还包含一些额外的在总体上定义服务器的系统表。在后面的“公用的系统表”中罗列了一些。除了master系统表作为一个整体属于ASE以外,每个数据库(包括master)都包含有一套仅适用于该数据库的系统表,这些表通过使用Transact-SQL语句以及系统存储过程来维护。公用的系统表Syscharsets:每行数据表示一个字符集或排序顺序Sysconfigures:每行数据表示一个服务器配置参数

Syscurconfigs:AdaptiveServer当前正在使用的配置参数的有关信息Sysdatabases:每行数据表示Adaptive

Server上的一个数据库

Sysdevices:每行数据表示一个数据设备和转储设备

Syslanguages:每行数据表示服务器所认知的一种语言Syslisteners:每行数据表示一种当前当前AdaptiveServer使用的网络连接类型Syslocks:关于活动锁的信息

Syslogins:每行数据一个Adaptive

Server注册帐号

Sysprocesses:关于服务器进程的信息

Systransactions:每行数据表示一个事务

Sysusages:每行数据表示一个已分配给某个数据库的磁盘块数据存储物理示意图SQL

ServerOS文件或原始磁盘分区段索引表事务日志I数据库数据存储逻辑示意图Vstart+size-1vstart数据存储逻辑示意图物理存储空间物理存储空间按照以下层次划分:数据库设备(Device)分片(Fragment)分配单元(Allocation

Unit)扩展单元(Extent)页(Page)系统表会将数据库中的对象映射到物理存储空间上,对物理存储空间的管理产生最大影响的是下面三条命令:disk

initcreate

databasealter

database数据库设备的创建数据库设备可以建立在操作系统的文件系统上(俗称大文件),也可以建立在原始存储设备上(俗称裸设备)。比较:文件系统方式,由操作系统控制,有高速缓存区,数据库的操作结果不会马上写入硬盘,而是先写入缓存区,如果突然电源故障,缓存中的数据将丢失,使得数据库的全面恢复不能得到保证,但是,读写速度较快。裸设备方式,SQLServer将处理自己的I/O请求,将数据库的操作结果直接写到磁盘,而不通过操作系统的缓冲方案,这样一来,SQLServer就精确地知道在系统瘫痪的情形下,哪些事务进行到了什么程度,便于数据库的完全恢复。数据库设备的初始化初始化命令disk

initname=“device_name”,physname=“physicalname”,vdevno=vitual_device_number,size=number_of_blocks[,vstart=virtual_address,cntrltype=controller_number][,contiguous]

(仅限于Open

VMS)例子disk

initname=“user_device”,physname=“/dev/rxyla”,vdevno=2,size=5120注意size的单位是2k,思ze=5120,即10M大小。用户数据库的创建建库命令create

database

database_name[on

{default

|

database_device}

[=size][,

database_device

[=

size]]…][log

on

database_device

[=size][,

database_device

[=

size]]…][with{override

|default_location=“pathname”}][for

{load

|

proxy_update}]说明:database_device:一个逻辑数据库设备名称。size:可以是数字,也可以是字符串。如果是数字,那么大小是以MB为单位;如果使用字符串,那么必须用引号将该字符串括起来,并且可以包括一种大小度量单位。大小度量单位有:K千字节M兆字节G吉字节用户数据库的创建当执行create

database命令时,Adaptive

Server将校验这个新数据库是否具有唯一的名称标识。为这个新数据库分配一个唯一的ID号,并且在master..sysdatabase表中插入一个代表这个新数据库的记录。在由create

database命令指定的设备上为这个新数据库分配空间,并在master..sysusages表中记录这些空间分配。将model数据库中的对象拷贝到这个新数据库结构中。这将会创建所有必需的数据库系统表,以及已经放置在model数据库中的任意数据对象或数据,例如,用户定义的数据类型等。初始化这个新数据库中剩余的逻辑页并标记为可用于分配。数据库的使用创建对象表、索引、视图、触发器、游标等等例如:create

table

test

(name

varchar(10),id

int)create

index

idx_test_id

on

test(id)查询select

*

from

test更新update

test

set

name=‘test’

where

id=1Sybase数据库事务日志什么是事务?事务就是一个“工作单位”。一个事务就是一个

不能被进一步分解的任务,无论其有多大或多小、多简单或多复杂。在数据库中,一个事务是一个

工作集,该工作集只能要么全部完成,要么一个

也完成不了,没有中间情况。相当于一个“原子

操作”。■事务模式链接模式(chained

mode)非链接模式(unchained

mode)Sybase数据库事务日志事务提交▲几个基本概念ULC:UserLogCache,即用户日志高速缓存。LOG/DATA

CACHE:高速缓存空间DirtyPage:脏页,即已经将更改记录在缓存的页上,但是还未将它们拷贝到磁盘上。Sybase数据库事务日志▲一个数据库事务的执行过程将一条begin

tran语句写入日志(ULC)将数据修改记录添加到日志中(ULC)对数据页进行数据修改(DATA

Pages)向ULC写入commit

tran语句(ULC)将ULC转移到高速缓存日志中(LOGPages)将事务的日志页从高速缓存拷贝到磁盘中Sybase数据库事务日志User

LogCacheBegin

Tran

AChange

A1Change

A2Commit

tran

ACACHELogpagesBegin

Tran

AChange

A1Change

A2Commit

tran

AData

pagesChange

A1Change

A2LOGBegin

Tran

AChange

A1Change

A2Commit

tran

ADATASybase数据库封锁机制锁类型排它锁(exclusive

lock)共享锁(share

lock)更新锁(update

lock)锁状态意向锁(intend)阻塞锁(blocking,简记为blk)需求锁(demand)Sybase数据库封锁机制封锁类型的相容矩阵■死锁(deadlock)系统结构和原理Open

Client/Open

Server基本结构sybase数据库的安装与配置以sybase

ASE12.0ForHP-9000/800HP-UX安装过程为例▲安装前准备(1)打操作系统补丁,例如PHSS_15853

ForHpUnix11.0(2)创建sybase组和用户(3)sybase软件空间要求(不包括数据库):1000MB(4)调整操作系统的参数:共享内存和异步I/O(5)检查数据库要用到的每一个设备的位置、类型、大小,确保所有数据库使用的设备sybase用户可读、写、执行。master

devicesysprocsdev

devicesybsystempdb

device

等等(6)环境变量的设置sybase数据库的安装与配置环境变量主要包括:sybase数据库的安装与配置Sybase软件的安装 两种方式图形界面方式字符命令方式两个部分服务器安装客户端安装这里以图形界面方式安装服务器端程序为例进行说明,请看下面的DOC安装文档。sybase数据库的安装与配置安装完毕后,进行配置安装完毕后,会生成这些重要文件:interfaces文件Runserver文件Errorlog文件config文件其中,Errorlog文件记录ASE服务器运行过程中的错误和相关操作日志信息,不能修改,只能浏览分析。其他三个文件需要做相应的修改配置。sybase数据库的安装与配置配置Interfaces文件该文件位于$SYBASE目录下。配置格式如下面的例子所示:zx10_40_90_237master

tcp

ether

10.40.90.237

4100query

tcp

ether

10.40.90.237

4100配置Runserver文件该文件位于$SYBASE/$SYBASE_ASE/install目录下。文件名称为RUN_SERVERNAME,实际上就是使用各种参数来调用dataserver程序。配置格式如下面的例子所示:/home/sybase/ASE-12_0/bin/dataserver

\-d/home/sybase/data/master.dat

\-e/home/sybase/log/install_syb.log

\-M/home/sybase

\-shp4

\sybase数据库的安装与配置Runserver文件使用的各种参数sybase数据库的安装与配置配置.cfg文件该文件位于$SYBASE目录下。每进行一次配置更改,该.cfg文件的当前版本就会拷贝到一个名称为:servername.<三位整数>的备份文件中,从servername.001开始递增。该文件配置的正确与否直接关系到数据库能否正常运行以及数据库的性能高低。所以,一定要谨慎配置。具体配置方法见下表:sybase数据库的安装与配置数据库运行参数的配置对照表:sybase数据库的启动与关闭启动数据库利用startserver应用程序,该程序将自动把服务器进程放在后台运行。以unix操作系统为例,步骤如下:以sybase用户login;进入$SYBASE/$SYBASE_ASE/install目录;利用startserver实用程序执行RUNSERVER文件;startserver

–f

RUN_hp4关闭数据库ASE关闭数据库有两种方式:正常关闭和无等待关闭。正常关闭步骤如下:★实用一种查询编辑器(例如,isql),以具有sa_role角色的任意用户注册;★从客户应用程序中键入shutdown命令;无等待关闭步骤同正常关闭,只是shutdown命令后面加上with

nowait选项;检查数据是否正常运行运行showserver实用程序,可以看到dataserver服务器程序是否启动,然后,用isql命令登录数据执行一些简单查询操作看是否能够成功。Sybase数据库的常用工具常用工具主要是各种各样的客户端工具。常用的有:(1)sybase的client工具集,包括SQL

advantage,sybase

central等。(2)第三方的client工具,例如,Toad、Rapid

Sql等程序。特别说明:对于初学者,sybase的client工具集是非常方便的,也是首选的。通过这些工具就能够完成数据库的创建、管理和SQL语句的执行等功能。例如,创建数据库设备和用户数据库。Sybase数据库的常用命令常用命令(1)isqlisql

–Uusername

–Ppasswd

–Sserver

–itest.sql

–oresult.txt(2)bcp

(out/in)bcp

database_name..table_name

in

datafile_name

–Uusername–Ppasswd

–Sserver

–t’|’

–cbcp

database_name..table_name

out

datafile_name

–Uusername–Ppasswd

–Sserver

–t’|’

–cSybase数据库的常用命令(3)Defncopydefncopy

dbname

{in|out

filename

dbname

[owner.]

objectname

[[owner.]

objectname…]

[-Ppassword]

[-S

[server]]

–U

username]}注意:defncopy实用程序只能用于那些在ments系统表中保存它们定义的对象。这就意味着defncopy不能用于表、索引、数据库或设备之类的对象。例子:defncopy

-Usa

-P-Shp4

out

testview.sql

zxin

dbo.testview(4)Dbcc

(Database

Consistency

Checker)dbcc{ checktable({表名|表标识})|checkdb[(数据库名)]|checkalloc[(数据库名)]|tablealloc({表名|表标识})|indexalloc({表名|表标识},索引标识)|checkcatalog[(数据库名)]|dbrepair(数据库名,dropdb)|reindex({表名|表标识})|fix_text({表名|表标识})}例子:dbcc

checktable

(‘mytablename’)Sybase数据库的常用命令(5)Dump转储数据库:dump

database

database_name

to

dump_device例子:dump

database

zxin

to

“/sybak/zxin.dmp”转储事务日志:dump

tran

database_name

[to

dump_device]dump

tran

dbname

with

truncate_onlydump

tran

dbname

with

no_log(6)Load装载数据库:load

database

database_name

from

dump_device装载事务日志:load

tran

database_name

from

dump_device例子:load

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论