zoukankan      html  css  js  c++  java
  • [转]Mssql的Tempdb库的处理

    转自:http://wanoyxj.blog.163.com/blog/static/9573613720088249442641/

    检查数据库有无问题 : dbcc checkdb 数据库名
    --截断事务日志
    backup log 数据库名 with no_log
    --收缩数据库
    dbcc shrinkdatabase (数据库名)

    为tempdb添加日志文件:
    ALTER DATABASE tempdb ADD LOG FILE
    ( NAME='templog_1',
    FILENAME ='d:\tempdb_log_1.ldf')

    增加日志大小:
    USE master
    GO
    ALTER DATABASE tempdb
    MODIFY FILE
    (NAME ='tempdb_log',
    SIZE = 2000MB)
    GO


    use tempdb
    select * from tempdb.dbo.sysfiles
    dump transaction tempdb with no_log --清空日志
    dbcc shrinkfile ('templog',1)
    select * from tempdb.dbo.sysfiles

    @重启SQL SERVER服务

    清空日志:
    DUMP TRANSACTION 库名 WITH NO_LOG
    再:企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数后确定
    SQL Server在每次重启服务时会重建tempdb数据库
    如果系统运行过程中 tempdb因需要自动增长了,SQL Serve不会记住增长后的大小,重启服务后仍然恢复到初始大小,
    但如果用户使用了手工调整tempdb的大小,重启服务SQL Server会把tempdb重建为用户指定大小


    测试示例
    tempdb初始化大小为8MB
    1)使tempdb自动增长
    select b.* into #t from sysprocesses a,sysobjects b
    重启后使用sp_helpdb 'tempdb'
    可以看到tempdb又恢复到8MB


    2) 用户使用Alter Database调整为100MB,
    USE master
    GO
    ALTER DATABASE tempdb
    MODIFY FILE
    (NAME = tempdev,SIZE = 100MB)


    重启服务后使用查看tempdb大小就为100MB
    以下查询可以看到tempdb的变化
    select a.filename,a.name,a.size*8.0/1024.0 as originalsize_MB,
    f.size*8.0/1024.0 as currentsize_MB
    from master..sysaltfiles a join tempdb..sysfiles f on a.fileid=f.fileid
    where dbid=db_id('tempdb')
    and a.size<>f.size

    总结:
    当系统自动调整tempdb大小时,对文件的读写将暂时的阻塞
    所以如果我们预知tempdb将会增加到某个大小时,可以自行调整,从而避免性能下降

    如何收缩 SQL Server 中的 Tempdb 数据库

  • 相关阅读:
    【2017-06-20】Linux应用开发工程师C/C++面试问题记录之一:Linux多线程程序的同步问题
    April 14 2017 Week 15 Friday
    April 13 2017 Week 15 Thursday
    April 12 2017 Week 15 Wednesday
    【2017-06-17】QtGui基础控件:QSpinBox及QDoubleSpinBox
    April 11 2017 Week 15 Tuesday
    April 10 2017 Week 15 Monday
    April 9 2017 Week 15 Sunday
    April 8 2017 Week 14 Saturday
    April 7 2017 Week 14 Friday
  • 原文地址:https://www.cnblogs.com/Athrun/p/2749057.html
Copyright © 2011-2022 走看看