Chinaunix首页 | 论坛 | 博客
  • 博客访问: 185840
  • 博文数量: 23
  • 博客积分: 1475
  • 博客等级: 上尉
  • 技术积分: 278
  • 用 户 组: 普通用户
  • 注册时间: 2006-09-23 16:18
文章分类

全部博文(23)

文章存档

2014年(8)

2012年(2)

2010年(3)

2009年(6)

2008年(4)

我的朋友

分类: Sybase

2010-11-28 00:27:35

     一次工程,在建立数据库时一时疏忽,未指定日志的单独设备,这就导致建立的数据库中数据和日志是混在一起占用共同的设备,日志和数据混在一起主要有以下缺点:(1)无法对数据库做日志备份,只能做全库的DUMP,这对备份非常麻烦。(2) 无法知道日志占用了多少空间,经常发生日志满,而无法提供服务,采取措施只有截断日志,这对维护数据库非常不方便。 为了彻底解决该问题,只有将日志和数据进行分离,为日志指定单独的设备空间。具体的操作步骤如下:
   (1) 备份数据库,包括master和与你要分离的数据库。一定要备份,因为分离存在一定的风险。
   (2) 创建一个日志设备(disk init ..) 为要分离数据库的日志准备。
   (3) alter database  XXXX  log on  new_log_dev.  修改数据库,将数据库的日志指定到
       new_log_dev这个设备上。
  (4) 做完以上操作,将要分离的数据库切换到单用户模式,命令如下:
       use master
      go
       sp_dboption db_name,
single user, true
      go

  (5) sp_logdevice xxxx, new_log_dev  将数据库的日志转到到new_log_dev 
      上。
 
 (6) 为了安全,执行以上操作,要运行dbcc命令,进行数据库检查,具体命令
      如下: dbcc checkdb
  (7) sp_droplogsegment logsegment,xxxx,devc_name.
 
阅读(1148) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-12-14 11:20:38

学习了