2022年Sybase基础教程 .pdf
《2022年Sybase基础教程 .pdf》由会员分享,可在线阅读,更多相关《2022年Sybase基础教程 .pdf(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 第一讲 Sybase基础知识 .2一、客户/服务器体系结构.2二、访问 Sybase 服务器的基本过程.2三、Sybase 产品概述.2四、SQL Server 的主要内容.3五、Sybase 的安装与配置.4第二讲数据库设备与存储空间管理.4一、概述.4二、设备(Device).5三、创建与使用段.6第三讲数据库与事务日志.8一、创建用户数据库.8二、更改数据库.8三、事务日志.9第四讲数据库安全性与用户管理.10 一、安全管理概述.10 二、理解数据库角色.10 三、服务器的帐户管理.11 四、数据库用户管理.11 五、用户的权限管理.12 第五讲数据库的备份与恢复.13 一、基本概念
2、.13 二、数据库备份.13 三、数据库的恢复.14 四、制定备份与恢复的策略.14 第六讲数据库与 T-SQL 语言.14 一、关系模型的基本概念.14 二、SQL语言概述.15 三、Sybase 的数据类型.15 四、数据定义语言.15 五、数据操纵语言.17 六、Sybase 预定义函数.20 七、数据控制语言.21 第七讲数据库编程基础.21 一、批处理.21 二、流程控制语言.21 三、存储过程.22 四、触发器.24 五、游标.25 六、事务维持数据一致性和恢复.26 第八讲 SYBASE 数据库用户管理基本概念.27 一、SQL SERVER 注册用户和数据库用户.28 二、SQ
3、L SERVER 数据库用户分类.28 三、别名(aliases)与组(group).28 名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 29 页 -2 四、SYBASE SQL SERVER的角色.28 第一讲 Sybase基础知识一、客户/服务器体系结构Sybase 是一种建立在客户/服务器体系结构上的数据库管理系统。什么是客户/服务器体系结构?从硬件角度看,客户/服务器体系结构是指将某项任务在两台或多台机器之间进行分配,其中客户机(Client)用来运行提供用户接口和前端处理的应用程序,服务器机(Server)提供客户机使用的各种资源和服务。从软件角度看,客户/服务器体系
4、结构是把某项应用或软件系统按逻辑功能划分为客户软件部分和服务器软件部分。客户软件部分一般负责数据的表示和应用,处理用户界面,用以接收用户的数据处理请求并将之转换为对服务器的请求,要求服务器为其提供数据的存储和检索服务;服务器端软件负责接收客户端软件发来的请求并提供相应服务。客户/服务器融合了大型机的强大功能和中央控制以及PC机的低成本和较好的处理平衡。客户/服务器为任务的集中/局部分布提供了一种新的方法,这种体系能够使用户对数据完整性、管理和安全性进行集中控制。在缓解网络交通和主机负荷以及满足用户需要方面,客户/服务器体系提供了良好的解决方案。总之,客户/服务器的工作模式是:客户与服务器之间采
5、用网络协议(如TCP/IP、IPX/SPX)进行连接和通讯,由客户端向服务器发出请求,服务器端响应请求,并进行相应服务。二、访问 Sybase服务器的基本过程1建立客户与服务器之间的连接,包括网络连接、客户进程与服务器进程之间的连接;2客户端通过网络发送SQL语句给服务器,用来查询或操作服务器中的数据或数据库对象;3服务器接收到SQL语句后,对其进行语法分析、优化和编译后执行;4如果执行的语句产生一个结果集,服务器通过网络把结果集返回给客户;5客户端对收到的结果作相应的处理。在客户/服务器体系,有两种数据库引擎结构,即多进程数据库引擎和单进程、多线程引擎结构。多进程结构即多个可执行程序同时运行
6、。每当用户登录到数据库系统时实际上都启动了数据库引擎的一个独立实例。存在起协调作用的进程协调进行之间的通讯以保证当多用户访问相同数据时数据的完整性。多进程数据库引擎一般用在大型机数据库上。单进程多线程数据库引擎在原理上和多进程数据库引擎类似,不同的是多线程数据库引擎自己负责调度各应用程序占用CPU的时间,而不依赖于操作系统。这样,多线程数据库引擎自我保护的能力更强。Oracle Server是一个真正的多进程数据库引擎,Sybase 数据库管理系统采用的是单进程多线程的引擎结构。三、Sybase产品概述1Sybase 软件的组成 Sybase软件可划分为三个部分:一是进行数据管理与维护的联机关
7、系数据库管理系统Sybase SQL Server;二是支持数据库应用系统的建立和开发的一组前端工具软件Sybase SQL Tools;三是可把异构环境下其他厂商的应用软件和任何类型的数据连接在一起的接口软件Open Client/Open Server。SQL Server是个可编程的数据库管理系统(DBMS),它是整个Sybase 产品的核心软件,起着数据管名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 29 页 -3 理、高速缓冲区管理、事务管理的作用。2SQL Server 的基本特征 SQL Server是个关系数据库管理系统,它具有如下一些基本特征:a.SQL Se
8、rver可以放在若干个磁盘设备上,初始安装时所需的磁盘空间至少要17MB。b.SQL Server支持多库结构,也就是说Sybase 系统中可以有多个数据库。Sybase 可以管理多个数据库。c.SQL Server可以编译和运行T-SQL语句,并可返回客户程序所要求的结果。T-SQL语句是标准SQL的扩充,它除了有数据定义语句、数据操纵语句和数据控制语句之外,主要增加了流程控制语句。d.SQL Server可以管理多个用户并具有较高的事务吞吐量和较低的事务响应时间。客户的应用程序可以存取Server中某一个或几个数据库的数据。四、SQL Server 的主要内容Sybase SQL Serv
9、er是一个多库结构的RDBMS,体系结构大致如下:1系统数据库服务器自身所使用的数据库,也可以说是管理服务器和用户数据库的数据库。Sybase 在安装时,自动创建了四个系统数据库:master、model、tempdb、sybsystemprocs(1)master 数据库它是管理和控制用户数据库以及维护服务器正常运行的核心数据库,它保存了大量的系统信息,如服务器配置、用户、设备等。在 master 数据库中不允许普通用户在其中创建数据库对象,否则会使得master 数据库的事务日志很快变满。如果事务日志用尽,就无法使用dump transaction命令释放master 数据库中的空间。(2
10、)model 数据库它是为创建用户数据库而提供的模板。每当创建新的数据库时,SQL Server 自动建立 model 数据库的一份拷贝,并把它扩充到用户所要求的大小,以此作为新用户数据库。Model数据库中包含每个用户数据库所要求的系统表。Model 数据库可以被修改以便定制新创建的。(3)tempdb 数据库它是个临时数据库,为服务器运行与处理提供一个共享的存储区域,如group by和 order by的中间结果就存放在这里。Tempdb的空间为服务器中所有数据库的所有用户所共享。每次重启 SQL Server,服务器的一个自动进程都拷贝model 数据库到 tempdb 数据库,并清除
11、tempdb中原来的内容。因此tempdb 中的用户表都是临时的。临时表分为两类:可共享的和不可共享的。不可共享的临时表在由create table中将符号#置于表名之前创立;可共享的临时表通过create table中指定表名前缀 tempdb.而创立。不可共享的临时表SQL Server 自动为其添加数字后缀名,且它只存在于当前会话中。(4)sybsystemprocs数据库它是专门用来保存系统命令(存储过程)的数据库,如sp_help、sp_configure、sp_helpdevice等。当任一数据库用户运行以sp_开头的存储过程时,SQL Server 按照以下顺序查找:当前数据库、
12、sybsystemprocs数据库、master 数据库。2用户数据库用户数据库是我们使用Sybase 服务器的真正目的。要管理用户数据,必须在Sybase 中创建自己的数据库,它是指用create database 命令创建的数据库。不能存取master 数据库的用户是无权创建新的数据库的。数据库中的主要内容数据库对象:名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 29 页 -4 表、视图、临时表索引、主键、外键缺省值、规则存储过程、触发器等五、Sybase的安装与配置1服务器端的安装安装建立 SQL Server 以后,要建立放置数据库、日志和索引的逻辑磁盘设备。数据库、日
13、志和索引的配置应注意以下原则;a.不要把任何用户对象安装在master 数据库中。b.日志应该保存在与数据库分离的磁盘上。c.可以通过跨越多个设备分配工作优化I/O 性能。2客户端的安装3需要立即更改的内容(1)更改 sa 的登录口令;(2)命名服务器;(3)修改文件名(保证Sybase Central正常启动);(4)更改缺省设备;(5)增加 tempdb 的空间。4创建用户数据库以下通过一个建立数据库的脚本说明建立数据库的过程:/创建数据库设备,设备大小以页(2K)为单位disk init name=”test_dbdev”,physname=”c:test_dbdev.dat”,vdev
14、no=10,size=10240 go disk init name=”test_logdev”,phyname=”c:test_logdev.dat”,vdevno=11,size=5120go/创建数据库TEST_DB,其大小为20M,日志大小为10M create database TEST_DB on test_dbdev=20 log on test_logdev=10 go/打开数据库use TEST_DB go 5系统管理的主要内容 a.物理资源的管理 b.用户及其权限管理 c.数据库的备份与恢复6SQL Server 的配置参数服务器配置是系统管理员的职责,正确的配置对系统性能
15、有重大的影响。有两个系统表存储配置信息:sysconfigures和 syscurconfigs;sysconfigures是永久性的,一旦系统运行,sysconfigures的信息就拷贝到 syscurconfigs中。显示配置和改变配置使用系统过程sp_configure。有两种配置值:动态的和静态的,动态值一旦改变立即生效,静态值要在系统重启动后才起作用。第二讲数据库设备与存储空间管理一、概述1安装初始化名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 29 页 -5 初始安装 SQL Server 时,安装程序和脚本初始化主设备,并建立master、model、tempdb
16、 和sybsystemprocs数据库。系统数据库、预定义设备和段按下列默认方式组织:a.master、model、tempdb 数据库安装在主设备master 上;b.sybsystemprocs数据库安装在安装时选择的设备上(sysprocsdev);c.为每个数据库创建三个预定义段:system、default和 logsegment;d.所有用户创建数据库的默认设备是master 设备;e.如果选择安装了审计数据库sybsecurity,它位于自己的设备上。2设备与存储管理考虑的主要问题(1)恢复物理磁盘崩溃时,磁盘镜像或在单独的物理设备上保存日志为数据库恢复提供了两种机制。(2)性能
17、磁盘读写速度是I/O 操作的瓶颈,正确地把数据库对象放置到物理设备上有利于改进性能;把日志和数据库对象置于单独的设备上可以提高系统性能;把表放在一个硬盘上而把索引放在另一个硬盘上,由于把工作分置于两个硬盘驱动器上,所以可以确保物理读写速度加快;磁盘镜像会降低磁盘写的速度。二、设备(Device)Sybase 将数据库中的所有数据存放在设备上。1设备的概念设备是 Sybase 预先配置的专门存放数据库的一块连续的磁盘空间,并且它被映射到一操作系统文件或一原始磁盘分区上。它有两个对应的名称:逻辑名和物理名。NT仅支持设备映射到文件。设备与数据库之间的关系:多对多关系。一个数据库可以被创建或扩充到多
18、个设备上,一个设备也可以被用来存放多个数据库。不同的设备操作系统可以对其并行地读写,因此我们可以人为地将一个数据库放置到多个数据库设备上。设备的分类:Database Device 和 Dump Device。数据库设备存放数据库和事务日志,转储设备用来存放数据库或日志的备份。2设备的创建命令语法:DISK INIT Name=device_name,Physname=physical_name,Vdevno=virtual_device_number Size=number_of_pages,.举例说明:DISK INIT Name=My_Device,Physname=D:My_devic
19、e.dat,Vdevno=3 Size=5000注释:逻辑名、物理名、设备虚拟号、设备大小创建转储设备:sp_addumpdevicedisk|tape Logical_Name,Physical_Name,TapeSize 3默认设备在没有指定设备的情况下,用户创建的任何数据对象自动存放在默认设备上。初始安装后,系统的主设备master 被预指定为默认设备,因此要尽快创建自己的默认设备。确保以下设备不是默认设备:系统主设备、指定仅被日志使用的设备。Sp_diskdefault 设备名,DefaultOn|DefaultOff 名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 29
20、 页 -6 4磁盘镜像磁盘镜像是出于数据库安全性的考虑,当介质失败时,磁盘镜像能提供不间断恢复。磁盘镜像是磁盘上的数据的绝对拷贝。如果某一硬盘事故发生,则该被损坏的拷贝就自动变成离线状态,因而所有的读写都被引向未被损坏的拷贝。Sybase的磁盘镜像是在设备级上进行的,因此磁盘镜像实质上是设备镜像。当对某一设备进行镜像操作时,Sybase 自动创建一个附加设备,由镜像处理程序将原设备上的所有数据拷贝到镜像设备上。如果要使某一数据库成为镜像,被分配给该数据库的每一设备都必须成镜像。Master 设备在服务器中地位特殊,如果它损坏了,SQL Server 将崩溃。因此,如果有可能总是要镜像Maste
21、r 设备(在另一磁盘上)。镜像命令语法:Disk Mirror Name=device_name,Mirror=physical_name ,writes=serial|noserial/device_name为被镜像的设备5删除设备 sp_dropdevice logical_name,delfile 含有数据库的设备不允许删除。三、创建与使用段段(Segment)是数据库设备上磁盘空间的逻辑组合,它可以看作是指向一个或多个数据库设备的标签。利用段可以控制数据库对象的存放位置,可以将数据库对象分类存放到不同的段上。设备与段之间的关系:多对多关系。一个设备上可以创建多个段,一个段也可以覆盖多个
22、设备。1使用段的优点 a.控制空间的使用:放在一个段上的数据库对象不会在段外增长;b.提高性能:处于不同磁盘设备上的段可以并行地读写;c.处理大表:利用段,可以将一个大表分段放在独立的物理设备上,如将一个表的文本或图象数据存储另外的一个段上。2创建段sp_addsegment 段名,数据库名,设备名说明:在指定设备上为某个数据库创建一个段。扩展段的范围 sp_exetendsegment 段名,数据库名,设备名说明:设备在数据库中必须可用,否则需要扩展数据库到新的设备上;指定的段、数据库、设备必须存在。缩小段的范围:sp_dropsegment 段名,数据库名,设备名说明:带第三个参数时,该命
23、令并不删除段,只是段的范围缩小了。若某个段包含了别的段要独占的设备,就需要缩小该段的范围。3使用段两个数据库放在同一设备的不同段上,它们不会相互影响;当数据库增加空间时,增加的空间会自动分配到它的每一个段上;例如:alter database my_db on data_dev=50 在 data_dev 设备上为 my_db增加 50M空间,这 50M空间被自动分配到数据库的每一个段中。注意:如果data_dev 对于数据库是新的,system 和 default段会自动扩展到该设备上。可以使用 alter database命令的 log on选项分配附加的日志空间。(1)在段中创建新对象c
24、reate table 表名(列名数据类型)on 段名 名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 29 页 -7 create clusterd|non clusterdindex 索引名 on 表名(列名)on 段名 注意:按照定义,聚集索引总是与表放在同一段上。(2)在段上放置现有对象sp_placeobject 段名,对象名注意:该命令并不把对象从一个数据库设备移动到另一设备上,它只影响未来的空间分配。可以将某个大表的text字段或 image 字段放置到一个单独的设备段上。Sp_placeobject 段名,“表名字段名”(3)在段上创建聚集索引按照定义,聚集索引总
25、是与表放在同一段上。如果在一个段上创建表,而在另一个段上创建聚集索引,则其表与其索引一起移动,整个表将离开创建表的段而迁移到创建聚集索引的段中。通过这种方法,可以快速而方便地把指定表移动到指定的设备上。(4)系统预定义段当用户创建一个数据库时,Sybase 自动创建三个预定义的段:system 段:存放系统表(包括所有用户对象的定义)default段:存放用户创建的各种对象,除非它们明显地指定到不同的段上。Logsegment 段:存放数据库的事务日志。(5)删除段删除段是缩小段范围的一个特例:sp_dropsegment 段名,数据库名4使用阈值管理阈值(Threshold)管理是一种自动监
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年Sybase基础教程 2022 Sybase 基础教程
限制150内