Sybase SQL Server日志问题普及(五)

 
   | |

导读:数据库管理员可通过这些存储过程来完成一些日常管理事务,本文中谈到了增加阈值、删除阈值、显示阈值以及sp_dboption的新选择。

关键词:Sybase SQL Server Sybase日志问题 log管理

正在加载数据...

4.增加阈值(sp_addthreshold)

它用于创建阈值( threshold )来监测数据库段中空间的使用。如果段中自由空间低于指 定值,SQL Server运行有关的存储过程。增加阈值的命令语法为:
sp_addthreshold database, segment, free_pages, procedure

其中:

◆database——要添加阈值的数据库名。必须是当前数据库名称。

◆segment——其自由空间被监测的段。当指定“default“ 段时要用引号。

◆free_pages——阈值所指的自由空间页数。当段中自由空间低于该标准时,SQL Server 运行有关存储过程。

◆procedure——当segment中的自由空间低于free_pages时,SQL server 执行该存储过程 。该过程可以放置在当前SQL Server或Open server的任意数据库中。但是,超出阈值时,不 能执行远程SQL Server上的存储过程。

例如:sp_addthreshold pubs2, logsegment, 200, dump_transaction

其中,存储过程定义为:

create procedure dump_transaction 
@ dbname varchar (30), 
@ segmentname varchar (30), 
@ space_left int, 
@ status int 
as 
dump transaction @dbname to "/dev/rmtx"  

那么,当日志段上可用空间小于200页时,SQL Server运行存储过程dump_transaction,将 pubs2 数据库的日志转储到另一台设置上。

sp_addthreshold不检查存储过程存在已否。但当阈值越出时,如果存储过程不存在,SQL Server把错误信息送到错误日志( errorlog )中。系统允许每个数据库有256个阈值,而同一段上二个阈值之间的最小空间为128页。其存储过程可以是系统存储过程,也可是在其它数 据库里的存储过程,或者Open Server远过程调用。

5.删除阈值(sp_dropthreshold)

它删除某个段的自由空间阈值,但是不能删除日志段的最后机会阈植。删除阈值的命令语 法为:

sp_dropthreshold database_name,segment_name,free_pages

其中三个参数分别为:阈值所属数据库名,阈值所监测的自由空间的段名,和自由空间页 。例如:

sp_dropthreshold pubs2, logsegment, 200     (删除 pubs2库中logsegment段的阈值200)

6.显示阈值(sp_helpthreshold)

它报告当前数据库上与所有阈值有关的段,自由空间值,状态以及存储过程或报告某一特 定段的所有阈值。显示阈值的语法为:

sp_helpthreshold [segment_name]

其中segment_name是当前数据库上一个段的名字。

例如:

◆sp_helpthreshold logsegment 显示在日志段上的所有阈值

◆sp_helpthreshold 显示当前数据库上所有段上的全部阈值

7.sp_dboption的新选择

abort xact when log is full

当日志段的最后机会阈值被超越时,试图往该日志段上记日志的用户进程将被挂起还是被 撤回?缺省情况下系统挂起所有进程。但是可以使用sp_aboption改变它。执行sp_dboption salesdb,"abort xact when log is full",true 命令后,一旦日志满了,则数据库修改事 务将会被回滚。

disable free space acctg

这个选择取消数据库中的阈值管理,但不影响最后机会阈值。执行:sp_dboption saledb, "disable free space acctg",true 它取消对非日志段上自由空间的统计。取消后,对系统 有以下影响:

◆SQL Server仅计算日志段上的自由空间

◆日志段上的阈值继续处于活动状态

◆在数据段上,系统表不改变,并且sp_spaceused得到的值是该选择被取消时刻的值

◆数据库段上的阈值失效

◆恢复加快

8.阈值的触发过程

频繁的插入和删除可能会使数据库段中的空间波动,阈值可能被多次超越,SQL Server使用系统变量@@thresh_hysteresis,避免连续触发阈值存储过程。它的值由SQL Server设定。 在system 10.0中,@@thresh_hysteresis是64页。

因此,增加一个阈值,它必须与下一个最近的阈值相距至少2*@@thresh_hysteresis页。

一个阈值被触发,需要以下几个条件成立:

◆必须到达阈值

◆阈值处于活动状态(即它被建立后或者自由空间达到阈值减于@@thresh_hysteresis)

◆只有自由空间减少阈值才触发,如果自由空间增加,它永远不触发


Sybase SQL Server日志问题普及
 Sybase SQL Server日志问题普及(一)
 Sybase SQL Server日志问题普及(二)
 Sybase SQL Server日志问题普及(三)
 Sybase SQL Server日志问题普及(四)
 Sybase SQL Server日志问题普及(五)

原文出处:http://www.sybase.com.cn/gvswse/site/china/index.jsp
 
来源:Sybase中国    
 
 
 
 
 

Sybase性能与调优

 
Replication Server(数据复制服务器)最初是如何定位的?它的应用价值体现主要在那些方面?相对以前的版本来说,目前的新版本Sybase Replication Server 15.2有哪些……
 
2008年11月4日至5日,2008 Sybase大中华区用户大会在北京万达索菲特大饭店召开。大会主要分为4日上午的高峰论坛、4日下午及5日全天三个并行的技术论坛。

热门技术手册排行

 

在本次的技术手册中,我们为您提供了PL/SQL的基础知识以及专家指导,包括了PL/SQL中的数据类型简介、PL/SQL函数与触发器以及PL/SQL中的存储过程等,相信您无论是高手还是菜鸟都可以获得有帮助的信息。

 

本系列文章由三部分组成,为Oracle数据库管理员(DBA)面试成功的必备手册。本专题内容囊括从DBA最初的面试开始,从写“杀手简历”到求职信、到面试过程到Oracle认证再到上升到公司高层最后到你成为公司里的明星DBA。专家为你一一指点迷津,最终让你登上成功的宝座。

 

要成为一名DBA,你需要具备哪些素质?DBA的薪酬待遇如何?DBA的职业道路究竟可以走向何方?我们将在本次的技术手册中为您一一解答。

 

在本次技术手册中,我们将对SQL Server存储过程的调试进行详细的介绍,包括了基础的调试方法和在调试过程中出现的T-SQL性能问题和解决方法。

 

本技术专题主要围绕sql server设计这个话题展开,侧重介绍了sql server集簇索引的设计、如何创建sql server索引、如何优化索引、索引的能与不能、处理sql server 2000索引碎片技巧以及维护sql server索引以实现查询优化等等。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录