祝愿大家身体健康!

 站点注册  找回密码
 站点注册

QQ登录

只需一步,快速开始

查看: 4228|回复: 0

偶机器上的一些资料:数据库选项(dboptions)的使用与管理

[复制链接]

偶机器上的一些资料:数据库选项(dboptions)的使用与管理

[复制链接]
ehxz

主题

0

回帖

57万

积分

管理员

积分
570784
贡献
在线时间
小时
2004-7-24 09:40:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?站点注册

×

数据库选项(dboptions)的使用与管理 数据库选项(dboptions)的使用与管理    一、概述   SQL Server能管理多个数据库,每个数据库有自己的选项。SQL Server允许用户通过设置数据库选项,来更好地管理和使用数据库。当大批数据需要加载到数据库的表时,如果把该库的Select into/bulkcopy选项设置为true,同时暂时删掉表上的索引和触发器,再使用系统提供的实用程序bcp,数据将以惊人的高速度被装载到用户表里。也曾有用户抱怨,调用dbwritetext函数不能成功地把一幅bmp图写入数据库的image字段中。原因是用户数据库的select into/bulkcopy选项没有设置成true。还有正在开发数据库应用的用户希望日常工作不受数据库日志满的不断打扰。这也可以通过设置数据库选项办到。因此,我们这里将数据库选项的设置和用法详细介绍给读者,希望它有助于你有效地使用和管理用户数据库。

二、数据库选项的设置   使用系统存贮过程sp_dboption来设置数据库选项,它的语法规则如下: sp_dboption [dbname,optname,{true┃false}]   其中: dbname为用户所需设置选项的数据库名称。如果执行带参数的sp_dboption,则当前使用的库必须是master。不带参数便显示数据库选项清单。但是,用户不能设置master库的数据库选项。

optname为用户所要设置或关闭的选项名称。SQL Server能识别选项名的任何唯一的字符串。当其名称为关键字或含嵌入空格或标点符号时,用引号括起来。 {true┃false}——设置该选项时为true,关闭该选项时为false。   使用sp_dboption,能设置以下数据库选项: abort tran on log is full allow null by default dbo use only ddl in tran disable free space acctg no chkpt on recovery read only select into/bulkcopy single user trunc log on chkpt   查看数据库的选项设置情况,使用sp_helpdb存贮过程。 三、数据库选项的用途   (1)Selectinto/bulkcopy   使用bcp或批拷贝程序接口将数据高速拷贝到一张没有索引和触发器的表,Writetext或者Select into生成永久表,则此选项必须设置为true。因此,当你使用bcp实用程序往用户数据库加载数据时,或者调用dbwretetext函数把一幅图片插入到某张表的image字段,或者通过Select into命令形成结果表时,别忘了把该选项置为true。SQL Server为了快速执行上述操作,减少记录修改操作的日志。但是,这种不记日志的操作会使事务日志与数据库中数据不同步。这种事务日志对于系统失败后的恢复就没有用处。系统禁止在这种情况下,dump transation到转储设备。因此,这些不记日志记录的操作完成后,将Select into/bulkcopy选项关闭后,执行dump database。   由Select into或批拷贝对数据库产生未被日志记录的修改后,执行dump transaction命令时,显示错误信息,并指导用户改用dump database(而Wrrietext命令没有这种保护)。   由于临时库tempdb从不恢复,所以使用Select into产生临时表时不必将Selectinto/bulkcopy选项打开。对于有索引的表进行bcp时,一般进行慢速批拷贝并且记入日志,所以此时也不必将Select into/bulkcopy设置为true。   (2)trunc log on chkpt   该选项表示每当checkpoint检查进程执行时(通常每分钟12次以上),事务日志被载截,即将已提交的事务日志删除。但是,该选项设置成true以后,人工执行checkpoint操作时都不载截事务日志。在开发数据库应用时,防止日志增长太快.可以将该选项设置成true,所以它很有用。

  (3)abert tran on log full   该选项决定当指定数据库日志段最后机会阀值被超越时,正在运行的事务的处理办法。缺省值为false,也就是说事务被暂停挂起,直到空间空余出来再恢复。本选项设置为true时,在日志存储空间空余出来之前,所有用户的需要写事务日志的查询将被去掉。

  (4)allow nulls by default   该选项置为true,将列的缺省状态从not null改为null,这与ANSI标准一致。T-SQL中列的缺省状态为not null,即不允许列为空值。但用户可在列定义时指定该列为null状态。allow nulls by default true与缺省状态相反。   (5)dbo use only   该选项设置为true时,只有数据库拥有者才能使用该数据库。   (6)ddl in tran   该选项设置为true时,用户在事务中可以使用某些数据库定义语言的命令,例如:Create table,grant和alter table命令。·只有ddl in tran选项设置为true时,下述命令才可在用户自定义事务内部使用: alter table create table drop rule create default create trgger drop table create index create view drop trigger create procedure ceate default drop view create rule drop index grant create Schera drop procedure revoke   下述命令在任何情形下都不能在用户自定义事务内部使用。 alter database load database truncate table create database load transation update statistics disk init recorfigure drop database select into   另外,系统过程sp_helpdb,sp_helpdevice,sp_helpindex,sp_helpjoins,sp_helpserver和sp_spaceused,由于在执行时产生临时表,也不能在用户自定义事务中使用。再者,用户自定义事务中不能使用修改master数据库的系统过程。

  (7)no free space acctg   该选项抑制剩余空间计帐及非日志段阀值活动的执行,由于不再计算这些字段的剩余空间,所以将加速恢复时间。关于该选项,在阀值管理部分,已有详细介绍。   (8)no chkpt on recovery   当保持最新的数据库备份时,此项设置为true。此时,存在一个基本库和一个辅助库。首先,基本库转储到辅助库中。然后,基本库的事务日志间断地转储并装载到辅助库中

  若此选项设置为缺省值false,重新启动SQL Server时,恢复数据库后将向数据库增加一条检查点记录。检查点记录确保机制不会不必要地重新运行,改变顺序号,并导致随后从基本库装载事务日志的失败。

  将辅助库的此项设置打开,恢复过程将不产生检查点,这样从基本库转储的事务日志可以被装载至辅助库。   (9)read only   该选项使得用户可以从数据库中检索数据,但不能修改数据。   (10)single user   该选项设置为true时,每次只能有一个用户访问该数据库。  

共享共进共赢Sharing And Win-win Results
SYBASEBBS - 免责申明1、欢迎访问“SYBASEBBS.COM”,本文内容及相关资源来源于网络,版权归版权方所有!本站原创内容版权归本站所有,请勿转载!
2、本文内容仅代表作者观点,不代表本站立场,作者自负,本站资源仅供学习研究,请勿非法使用,否则后果自负!请下载后24小时内删除!
3、本文内容,包括但不限于源码、文字、图片等,仅供参考。本站不对其安全性,正确性等作出保证。但本站会尽量审核会员发表的内容。
4、如本帖侵犯到任何版权问题,请立即告知本站 ,本站将及时删除并致以最深的歉意!客服邮箱:admin@sybasebbs.com
您需要登录后才可以回帖 登录 | 站点注册

本版积分规则

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com

QQ|Archiver|PowerBuilder(PB)BBS社区 ( 鲁ICP备2021027222号-1 )

GMT+8, 2024-4-28 21:27 , Processed in 0.048088 second(s), 8 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表