




已阅读5页,还剩93页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库系统管理 AdaptiveServerEnterprise12 5 设备 单元概要 AdaptiveServer通过一个称为设备的机制来分配数据库资源 在创建数据库之前 它所在的设备必须先初始化 目标完成本单元学习后 应该能够 初始化和删除设备 把设备变为缺省设备 镜像设备 创建和修改设备后备份master数据库 单元提要 创建和删除设备缺省设备镜像设备备份master数据库 设备 数据库设备是一个物理资源 用它来存放数据库中的对象 术语 设备 并不需要指一个独立的物理设备 它可为一片磁盘 例如一个磁盘分区 它可为操作系统的一个文件 设备类型 安装设备master设备该设备初始时存放master model tempdb 和sybsystemdb系统数据库 除了master数据库外 所有其它数据库都可移出或扩展出master设备 设备 它存放sybsystemprocs数据库 用户定义数据库设备这些设备存放用户数据库 这些设备可存放除master外的其它系统数据库 转储设备这些设备存放数据库和日志的备份 物理硬盘类型 可从两种物理存储类型创建一个设备 裸盘分区 操作系统文件 最合适的选择依赖于 使用的ASE版本 ASE运行的平台 裸分区服务器在磁盘初始化时就预分配了空间 这样创建数据库时就不容易失败 操作系统文件服务器在磁盘初始化时不预分配空间 由于没有预分配空间 在创建数据库时可能由于空间不够而失败 物理硬盘话题 ASE11 9 2和以前版本 物理硬盘话题 ASE11 9 2和以前版本 在UNIX上 设备的完整性无法保证 写到文件的数据要先写到UNIX文件系统缓冲区 在一些失败情况下 服务器不能保证恢复缓冲区中数据 所以 在UNIX上推荐使用裸设备 在NT上没有物理磁盘类型建议 物理硬盘话题 ASE12 0 裸分区服务器在磁盘初始化时就预分配了空间 这样创建数据库时就不容易失败 操作系统文件服务器在磁盘初始化时就预分配了空间 这样创建数据库时就不容易失败 写盘操作在两个平台上都保证 性能通常较好 文件系统设备能够使用文件大缓存 查询文件系统设备通常性能好 所需页即使不能在Sybase缓存中也可能在文件系统缓存中找到 文件系统容易管理 所以 推荐使用文件系统 初始化设备 设备初始化是设备准备存储并使服务器知道它的过程 设备在使用前必须初始化 一旦设备完成初始化后 就能用于存储 数据库 指定数据库对象 数据库事务日志 设备初始化使用diskinit命令 把指定的物理磁盘设备或操作系统文件映射到一个数据库设备名 新设备列在master sysdevices中 该设备准备存放数据库 只有系统管理员能执行diskinit 分配单元 diskinit将数据库设备分成分配单元 每个分配单元由256个2K的页组成 等于1 2MB内存容量 每一分配单元的首页是分配页 即便在分配单元上 此页仍包含有关数据库的信息 diskinit语法 语法 diskinitname logical device name physname physical name vdevno virtual device number size number of pages dsync true false UNIX例子 diskinitname dev dat 2 physname dev rxyla vdevno 2 size 5120 diskinit语法 NT例子 diskinitname dev dat 2 physname d devices userdisk dat vdevno 2 size 5120 虚拟设备号 虚拟设备号是在diskinit命令中赋给vdevno的值 可使用从2到 numberofdevices配置值 1 没有使用的任何数字 masterdevice设备使用vdevno值为0 sybprocsdev设备使用vdevno值为1 选择虚拟设备号 sp helpdevice列出所有正在使用的vdevno号 下面查询返回正在使用vdevno的最大值 selectmax low 16777216 fromsysdevices每个设备最多有16 777 216个虚拟页 masterdevice设备使用0到16 777 216 sybprocsdevdevice设备使用16 777 217到33 554 431 下个设备使用33 554 432到50 331 647 sysdevices表中的列low记录了该设备使用的最低虚拟页号 所以 low 16 777 216 返回该设备的vdevno值 这在创建设备的脚本中有用 dsync子句 dsync子句决定如何向UNIX操作系统文件设备上写数据 当设为TRUE时 直接写到磁盘上 保证完全恢复 当设为FALSE时 写盘要通过UNIX文件缓冲区 不能保证完全恢复 如果没有指定dsync值 该值设为TRUE 当使用UNIX裸设备和NT设备时 不考虑dsync值 删除设备 语法 sp dropdevicelogical device name例子 sp dropdevicedev dat 2删除设备 当需要改变 修理或增加硬件时 当需要改变设备大小时 为了达到该目的 删除然后重建该设备 一旦设备被删除 它的vdevno值就释放出来了 在删除设备前 必须先把该设备上所有的数据库移开 sp dropdevice并不从操作系统中删除设备文件 它必须手工删除 查看设备信息 语法 sp helpdevice logical device name 带一个设备名 它返回该设备信息 不带设备名 它返回所有设备信息 例子 sp helpdevicedev dat 2device namephysical namedescription dev dat 2d Sybase userdisk datspecial dsyncon physicaldisk 10 00MBstatuscntrltypedevice numberlowhigh 1638607117440512117445631 sysdevices系统表 sysdevices是记录每个设备的系统表 它只在master数据库中 例子 select fromsysdevices 开发习惯建议 要确认命令diskinit执行成功 确认有足够的磁盘剩余空间 在UNIX上 执行df k命令 在WindowsNT上 查看磁盘的属性 在UNIX上 确认sybase帐户在该设备上有写权限 使用有意义的设备名 创建和保存你的设备分配脚本 将sysdevices系统表作一个硬拷贝 该硬拷贝为物理设备与逻辑设备的映射 动手练习06A 初始化设备 除非特别指定 否则每个方标语句都在自己的批中执行 转到master数据库 usemaster正在使用的虚拟设备号最大是多少 selectmax low 16777216 fromsysdevices 初始化一个新设备 对应vdevno值 使用最大虚拟设备号加1 动手练习06A 初始化设备 diskinitname dev dat temp physname device path 1 vdevno size 5120确认设备已创建好 sp helpdevicedev dat tempdiskinit命令指定设备大小为5120 但sp helpdevice报告设备大小为10MB 两个数为什么不同 动手练习06A 初始化设备 正在使用的最大虚拟设备号是多少 selectmax low 16777216 fromsysdevices删除已创建的设备 sp dropdevicedev dat temp正在使用的最大虚拟设备号是多少 selectmax low 16777216 fromsysdevices 单元提要 创建和删除设备缺省设备镜像设备备份master数据库 缺省设备 当创建一个数据库时 可指定它所在的设备 缺省设备是当创建数据库时没有指定设备而该数据库所在的设备 可有多个缺省设备 当有多个缺省设备时 缺省设备按照逻辑设备名的字母次序使用 第一个设备用满后 然后使用第二个 依次类推 可能没有缺省设备 如果没有缺省设备而你创建数据库时又没有指定设备 则该命令失败 使设备变为缺省设备 语法 sp diskdefaultlogical device name defaulton defaultoff 例子 sp diskdefaultdev dat 2defaulton master设备 master设备是安装过程中的缺省设备 它包含master model tempdb 和sybsystemdb数据库 Master数据库不能扩展到master设备外 Sybase建议 扩展model tempdb 和sybsystemdb数据库到master设备外 将master设备变为非缺省设备 不能为缺省设备的设备 下面类型的设备可为缺省设备 但Sybase建议不要把它们使用为缺省设备 master设备 sybsecurity设备 如果安装了的话 任何只用作事务日志的设备 高性能数据库所使用的设备 动手练习06B保护master设备 除非特别指定 否则每个方标中语句在自己的批中执行 转到master数据库 usemaster查看master设备的缺省状态 sp helpdevicemaster将master设备变为非缺省设备 sp diskdefaultmaster defaultoff查看master设备的缺省状态以确认修改 sp helpdevicemaster 单元提要 创建和删除设备 缺省设备镜像设备备份master数据库 磁盘镜像 在介质损坏情况下 磁盘镜像提供不间断恢复 镜像设备是 重复 的 所有向设备的写操作都被拷贝到另一个分离设备上 如果一个硬盘坏了 服务器在errorlog注出后继续使用令外一个硬盘 镜像的优点与缺点 优点 磁盘坏后不会停机 确保全部 不间断恢复 缺点 占用额外磁盘资源 有用数据写到两块磁盘上 因而会降低性能 尽管会增加成本开销 仍然建议使用磁盘镜像 镜像设备时发生的动作 镜像一个设备 语法 diskmirrorname logical device name mirror physical device name writes serial noserial UNIX例子 diskmirrorname dev dat 2 physname dev rxyld mrr NT例子 diskmirrorname dev dat 2 physname d devices userdiskmirror dat 用户引发的镜像取消 语法 diskmirrorname logical device name side primary secondary mode retain remove 例子 diskunmirrorname dev dat 2 mode remove 系统引发的镜像取消 在镜像设备上的一个I O错误会自动取消设备镜像 当I O错误发生时 AdaptiveServer继续在非镜像模式下运行 sysdevices表中的状态位指示非激活和哪一个设备处于工作状态 出错设备的I O不起作用了 在master数据库中执行checkpoint 错误信息送到errorlog中 waitformirrorexit进程被激活 设备再镜像 语法 diskremirrorname logical device name 例子 diskremirrorname dev dat 2 该命令恢复被挂起设备的镜像 将设备内容拷贝到镜像设备上 在用户引起或系统引起的取消镜像后使用该命令 在镜像挂起期间写到主设备的任何数据都要拷贝到第二块设备上 移动一个设备 镜像可用于将一个设备从一个位置移到另一个位置 镜像设备被移到新位置 这将第一个设备拷贝到新位置 取消主设备面的镜像 这样就停止使用老位置设备 转而使用新位置设备 例子 diskmirrorname dev dat 2 physname dev new location diskunmirrorname dev dat 2 side primary mode remove 什么应该镜像 镜像最有价值和最脆弱的设备 master设备日志设备活动设备理想状态 应该镜像所有数据库设备 查看镜像设备信息 sp helpdevice包含镜像设备信息 语法 sp helpdevice logical device name 例子 sp helpdevice dev dat 2 device namephysical namedescription dev dat 2 dev rxylaspecial MIRRORENABLED mirror dev rxyld serialwrites readsmirrored 镜像规则 一个设备和它的镜像组成一个逻辑设备 而不是两个 第二个物理设备容量必须大于等于主磁盘设备 并且它应该在单独一个物理硬盘上 遵循特定平台对镜像设备的额外限制 为了镜像全部数据库 要镜像该数据库的每个设备 在主盘不忙时作镜像 启动时镜像Master设备 可在启动时镜像master设备 如果主master设备有问题时 AdaptiveServer能够使在UNIX上 在启动时镜像master设备 编辑RUNSERVER文件 加入镜像设备的物理名 例子 dataserver ddevicename rmastermirror devicename 启动时镜像Master设备 在UNIX或NT上 采用以下步骤利用SybaseCentral配置在启动时镜像master设备 1 打开数据库设备文件夹 2 点击master设备图标 3 选择Mirror页 4 点击MirroredDevice检查框 5 提供镜像设备路径 单元提要 创建和删除设备 缺省设备 镜像设备备份master数据库 备份master数据库 Master数据库中包含的系统表对服务器功能非常重要 在增加 修改和删除前后备份master数据库非常重要 设备 数据库 段 用户 本节提供数据库备份的简单概要 它包含能够备份master数据库的足够信息 备份和装载数据库的详细信息在 备份数据库 单元中详细讨论 转储设备 一个数据库备份 或 转储 是整个数据库的一个物理备份 数据库备份存放到转储设备上 增加和删除转储设备 简化的增加语法 sp addumpdevice tape disk logical name physical name 例子 sp addumpdevice tape dump master db dev nrmt4 sp addumpdevice disk dump pubs2 db usr backups disk dump 删除语法 sp dropdevicelogical name例子 sp dropdevicedump master dbsp dropdevicedump pubs2 db 备份服务器 所有AdaptiveServer的备份都是由备份服务器完成的 是一个基于OpenServer的程序 与AdaptiveServer运行在同一台机器上 做备份前必须先启动备份服务器 可使用startserver命令启动备份服务器 可使用SybaseCentral命令启动备份服务器 备份master数据库 简化语法 dumpdatabasemastertodump device name例子 dumpdatabasemastertodump master db备份master数据库时其它用户可使用服务器 在创建 修改或删除设备前后应该备份master数据库 总结 一个数据库设备是存放该数据库内对象的物理资源 设备必须初始化后才能使用 diskinit命令用于初始化设备 一旦设备初始化后 它就能存放数据库 指定数据库对象和数据库事务日志 要删除一个设备 使用系统存贮过程sp dropdevice 缺省设备是建数据库没有指定设备时所使用的设备 总结 master设备是一个缺省设备 服务器安装后它包含master model tempdb和sybsystemdb数据库 Master数据库不能移出master设备 Sybase建议将数据库model tempdb和sybsystemdb移出master设备 将master设备改为非缺省设备 在介质坏了的情况下 磁盘镜像提供非停止恢复机制 不能直接镜像一个数据库 系统管理员可取消设备镜像 或系统介质失败时就会取消设备镜像 镜像可用于将设备从一个位置移到另一个位置 总结 在创建 修改或删除设备前后 应该备份master数据库 先建一个转储设备 必须启动备份服务器 命令和参数总结 diskinit初始化磁盘 这样使它们就能用于用户定义数据库设备 sp dropdevice删除一个设备 sp helpdevice显示设备信息 sp diskdefault改变设备状态 从缺省设备变为非缺省设备或反过来 diskmirror将一个设备镜像到一个另外的物理硬盘上 可用于将一个设备移到新位置 命令和参数总结 diskremirror恢复挂起设备的镜像 diskunmirror取消设备镜像 sp addumpdevice增加一个转储设备 dumpdatabase备份一个数据库到转储设备上 配置参数 numberofdevices 最大可用设备个数 缺省 10 静态 复习问题 1 什么是设备 2 系统管理员为什么执行diskinit命令 3 什么是vdevno 新设备能够使用什么样的vdevno值 4 什么是缺省设备 5 什么是master设备 6 什么是磁盘镜像 7 什么样的事件能够停止磁盘镜像 8 相对设备而言 什么时候应该备份master数据库 数据库系统管理 AdaptiveServerEnterprise12 0 数据库 单元概要 当系统管理员按需要初始化设备后 SA就能创建数据库了 本单元讨论如何计算数据库大小 创建和扩展数据库 目标完成本单元学习后 应该能够 懂得数据库大小和创建数据库 设置数据库属主和选项 扩展数据库 单元提要 数据库大小和数据库创建设置属主与选项扩展数据库 创建一个数据库时发生了什么 数据库创建与model数据库 model作为 模板数据库 Model库中的内容都拷贝到新数据库中 可在model数据库中创建存贮过程 表 缺省 用户自定义数据类型 用户 权限和设置该数据库选项 所有未来新建数据库自动插入这些对象和设置这些选项 数据库创建与master数据库 创建数据库所涉及到的master数据库中系统表 sysdatabasesAdaptiveServer中每个数据库在其中都占一行 它指定数据库名和属主 为每个数据库指定一个IDdbid sysusages每个数据库设备片在里面都占一行 指它的大小和该设备片在逻辑磁盘地址中的起始地址 创建一个数据库前提条件 创建数据库前 应先决定 数据库的大小 位置和所需空间 是否需要独立的日志设备 它的大小是多大 数据库是否需要不停止恢复 数据库大小 数据库大小用兆字节 MB 度量 最小是2MB defaultdatabasesize是一个配置参数 当创建数据库没有指定大小时 该配置参数指定数据库大小 单位为MB 缺省值为2 该选项为静态 服务器必须重启 数据库非常容易扩展 但不能直接缩小 要缩小一个数据库 先将数据拷贝出 重新创建数据库 再把数据拷回 当计划数据库大小时 考虑主要表 索引和事务日志 为其他操作留一些富余空间 估计表和索引空间 语法 sp estspacetable name no of rows fill factor cols to max textbin len iosec 例子 sp estspacetitles 1000nametypeidx levelPagesKbytes titlesdata09831966titleidindclustered0714titleidindclustered112titleindnonclustered0279558titleindnonclustered1918titleindnonclustered212Total Mbytes 2 50 followedbysummarydatafortitleidind titleind 日志大小 日志大小依赖于 事务的类型和数量 日志备份的频度 一个好的起始值为整个数据库大小的10 到25 所有插入 删除和修改操作都记日志 对于selectinto和快速bulkcopy 只有空间分配与空间回收记日志 与数据库一样 日志很容易扩展 但不能直接缩小 数据与日志放在分离的物理设备上 对于每个数据库 应该把数据和日志放在分离的设备上 当作日志备份时节省时间和资源 建立固定日志大小以防止与其他数据库活动争空间 提高性能 降低数据库和日志同时损坏的可能性 创建数据库 语法 createdatabasedatabase name on default database device size database device size logondatabase device size database device size withoverride forload 例子 1 createdatabasepubs2ondefault 4 2 createdatabasemydbondefault 3 dev dat 1 2 3 createdatabasesalesdbondev dat 1 2logondev log 1 2 创建数据库 必须在master数据库中执行这命令 记住Sybase建议把日志放在独立设备上 创建数据库 例子 createdatabasepubs2数据和日志部分都在一个缺省设备上 数据库大小是model库大小或defaultdatabasesize大小 它们中较大一个 createdatabaseemployeedbondev dat 1 5数据和日志部分都在dev dat 1设备上 数据库大小为5MB 创建数据库 例子 createdatabasesalesdbondev dat 1 5logondev log 1 2数据在dev dat 1设备上 数据大小为5MB 日志在dev log 1设备上 日志大小为2MB 数据库的总大小为7MB 删除数据库 语法 dropdatabasedatabase name例子 dropdatabasepubs2仅能够被下面用户执行 数据库属主 系统管理员 数据库不能处于使用状态 下列情况下 应该删除数据库 要去掉试验或老数据库 从而回收空间 数据库恢复失败 显示数据库信息 语法 sp helpdb db name 例子 sp helpdbpubs2 namesizeownerdbid pubs22 0MBsa6 device fragmentssizeusage master2 0MBdataandlog dev dat 13 0MBdatadev log 12 0MBlog 数据库ID函数 db name 给定数据库ID时 返回数据库名字 语法 db name database id 例子 selectdb name 6 pubs2db id 当给定数据库名时 返回数据库ID 语法 db id database name 例子 selectdb id pubs2 6 授予createdatabase权限 为了创建一个数据库 用户必须有 有SA角色 或从系统管理员处获得授予createdatabase权限 同时有master数据库的访问权 授予createdatabase权限语法 grantcreatedatabasetouser name例子 grantcreatedatabasetowriker 授予createdatabase权限 系统管理员在决定授予谁权限时应慎重 在许多生产系统中 系统管理员不把这个权限授予任何人 管理员创建好所有数据库 然后将数据库属主转移给其他人 单元提要 数据库大小和数据库创建设置属主与选项扩展数据库 数据库属主 创建数据库的登录名是该数据库的最初属主 数据库属主能够将数据库所有权转移给其他用户 转移数据库属主语法 sp changedbownerlogin name例子 useenterprise dbgosp changedbownerwrikergo 数据库属主 转移数据库属主的限制 sp changedbowner必须在要转移属主的数据库中执行 新的属主登录名必须是一个服务器的有效登录名但不能是该数据库的用户 数据库选项 数据库选项控制数据库的许多方面行为 例子 事务行为 表中列的缺省 用户访问权限限制 恢复和bcp操作的性能 日志行为 数据库选项就象配置参数和set选项 但它们作用范围不同 配置参数影响服务器范围的行为 数据库选项影响数据库范围行为 Set选项影响当前会话或存贮过程 数据库选项列表 1 allownullsbydefault当列属性在createtable语句中没有指定时 该列给予NULL属性 ANSI标准行为 2 autoidentity对于没有IDENTITY列的表 自动获得10位数字IDENTITY列的主键约束或唯一约束 但该列上没有索引 3 dbouseonly只有数据库属主能使用该数据库 4 ddlintran多数create drop 和alter令可在用户定义的事务中执行 续 数据库选项列表 5 identityinnonuniqueindex对于带有IDENTITY列的表 自动将IDENTITY列包含在表的索引键中 以便使该表上创建的所有索引都唯一 6 readonly用户只能查询数据库中数据 但他们不能修改数据 7 singleuser一个时刻只能有一个用户访问数据库 8 uniqueauto identityindex加一个IDENTITY列 如果不存在的话 和一个唯一非聚族索引到一个新表上 数据库选项列表 下面的数据库选项将在本课程后面详细讨论 9 aborttranonlogfull10 disablealiasaccess11 nochkptonrecovery12 nofreespaceacctg13 selectinto bulkcopy pllsort14 trunclogonchkpt 续 查看数据库选项 语法 sp dboption db name 例子 sp dboptionpubs2name status pubs2 selectinto bulkcopy pllsort trunclogonchkpt 注释 有些列被忽略了 任何用户都可查看数据库选项 设置数据库选项 语法 sp dboption db name option name true false 例子 sp dboptionpubs2 readonly truegousepubs2gocheckpointgo只有系统管理员 系统安全员和数据库属主才能够设置数据库选项 必须在master数据库中使用sp dboption 为了使选项改变生效 在受影响数据库中执行checkpoint命令 动手练习07 创建数据库 除非特别指标 每个方快命令都在自己的批中执行 切换到master数据库 usemaster正在使用的虚拟设备号 selectmax low 16777216 fromsysdevices 初始化一个新设备temp dev 对于vdevno值 使用最高虚拟设备号加1 diskinitname temp dev physname device path 2 vdevno size 5120 动手练习07 创建数据库 在新设备上创建5MB数据库 createdatabasemy first dbontemp dev 5在master设备上创建2MB数据库 2MB事务日志在temp dev设备上 createdatabasemy second dbonmaster 2logontemp dev 2查询所有数据库信息 sp helpdb删除已创建的数据库和设备 dropdatabasemy first db my second dbexecsp dropdevicetemp dev从操作系统中删除设备文件 单元提要 数据库大小和数据库创建 设置属主与选项扩展数据库 数据库空间用完 一个给定数据库的数据与日志部分 由于用户使用 空间会充满 发生这个情况时 缺省行为是所有数据修改都被挂起 如果数据部分空间用完 能够 旧数据存档以收回空间 扩展数据部分 如果日志空间用完 能够 备份并截掉日志 扩展日志空间 扩展数据库空间 数据库属主与系统管理员可另外分配空间给数据库 扩展空间可在同一个设备上 也可在不同设备上 数据库通过alterdatabase命令扩展空间 alter命令 语法 alterdatabasedatabase name on default database device size database device size logon d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 望城音乐面试题目及答案
- 唐山语文面试题目及答案
- 南京理工大学数学试卷
- 历年厦门中考数学试卷
- 青岛二年级下数学试卷
- 鸡蛋包装自动化方案
- 南京零模2024数学试卷
- 全国新卷数学试卷
- 2025年小学语文考编试题及答案
- 2025年小学生算试题及答案
- 基本无害的计量经济学:实证研究者指南
- 人教八年级下册期末物理综合测试试卷及答案解析
- 锦联铝材自治区
- 2021起重设备安装工程施工及验收标准
- 中药制剂检验技术题库+参考答案
- 有理数加减混合运算练习题250道
- DSM-V美国精神疾病诊断标准
- 劳动防护用品使用安全检查表
- 文化艺术连锁式培训学校员工工作手册
- 《简单教数学》读书心得
- 基础餐时胰岛素方案治疗儿童1型糖尿病患者
评论
0/150
提交评论