位置: 编程技术 - 正文

Sqlserver 2000/2005/2008 的收缩日志方法和清理日志方法

编辑:rootadmin
1、设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数据库名称(如论坛数据库Forum)-->然后点击右键选择属性-->选择选项-->在故障还原的模式中选择“简单”,然后按确定保存 2、在当前数据库上点右键,看所有任务中的收缩数据库,一般里面的默认设置不用调整,直接点确定 3、收缩数据库完成后,建议将您的数据库属性重新设置为标准模式,操作方法同第一点,因为日志在一些异常情况下往往是恢复数据库的重要依据。最简单直接具体如下: 一、下载:日志清理收缩工具 日志清理收缩方法讲解: 1、自然是下载日志清理软件。 2、在服务器上运行trunc.exe,打开软件。 这里用户名一定是sa 密码你必须记得sa 的密码,这个很重要,不然就会查询不到相应的数据库了。输入密码后就点数据库。你的服务器数据库就呈现出来了。 你想收缩哪一个就选哪一个吧。你应该懂了吧!好用简单方便哦。 二、SQL 的收缩日志 由于SQL对文件和日志管理进行了优化,所以以下语句在SQL中可以运行但在SQL中已经被取消: (SQL) Backup Log DNName with no_log go dump transaction DNName with no_log go USE DNName DBCC SHRINKFILE (2) Go -------------------------------------------------------------- (SQL: 在SQL中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。 USE [master] GO ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY SIMPLE --简单模式 GO USE DNName GO DBCC SHRINKFILE (N'DNName_Log' , , TRUNCATEONLY) GO USE [master] GO ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY FULL --还原为完全模式 GO 优点:此清除日志所运行消耗的时间短,GB的日志在分钟左右即可清除完毕,做完之后做个完全备份在分钟内即可完成。缺点: 不过此动作最好不要经常使用,因为它的运行会带来系统碎片。普通状态下LOG和DIFF的备份即可截断日志。此语句使用的恰当环境:当系统的日志文件异常增大或者备份LOG时间太长可能影响生产的情况下使用。 方法1: 第一步: backup log database_name with no_log 或者 backup log database_name with truncate_only --no_log和truncate_only是在这里是同义的,随便执行哪一句都可以 第二步: 1.收缩特定数据库的所有数据和日志文件,执行 dbcc shrinkdatabase (database_name,[,target_percent])--database_name是要收缩的数据库名称;target_percent是数据库收缩后的数据库文件中所要的剩余可用空间百分比 2.收缩一次一个特定数据库中的数据或日志文件,执行 dbcc shrinkfile(file_id,[,target_size]) --file_id是要收缩的文件的标识 (ID) 号,若要获得文件 ID,请使用 FILE_ID 函数或在当前数据库中搜索 sysfiles;target_size是用兆字节表示的所要的文件大小(用整数表示)。如果没有指定,dbcc shrinkfile 将文件大小减少到默认文件大小 两个dbcc都可以带上参数notruncate或truncateonly,具体意思看帮助。 方法2 (这个方法在sqlserver的环境下做一般能成功,在sqlserver7及以下版本就不一定了): 第一步: 先备份整个数据库以备不测 第二步: 备份结束后,在Query Analyzer中执行如下的语句: exec sp_detach_db yourDBName,true --卸除这个DB在MSSQL中的注册信息 第三步: 到日志的物理文件所在的目录中去删除该日志文件或者将该日志文件移出该目录 第四步: 在Query Analyzer中执行如下的语句: exec sp_attach_single_file_db yourDBName,'d:mssql7datayourDBName_data.mdf' --以单文件的方式注册该DB,如果成功则MSSQL将自动为这个DB生成一个K的日志文件。 以上方法在清除log日志中均有效。 但,能否让sql server 不产生log日志呢?以上方法好像均无效。 我这儿正好有个case: 我客户的sql server每天都会产生4,M的log日志,每天都清除一下,非常不便。有没有办法实现不产生log日志呢? 我分析了一下客户产生log日志的原因,并且做了相应测试。 客户是每天将数据库清空,从总系统中将数据导入到sql server里。我感决sqlserver在插入时产生log不大,在delete整个库时产生log极大。 比如: SELECT * into test_2 from b_bgxx 共条记录,产生十几M log,如果 delete from test_2 产生多M log ,这明显存在问题。 虽然可以换成: truncate table test_2 但我还是希望能找到不产生log的方法。就如oracle不产生归档一样。 三、Server : 清空数据库日志 日志文件满而造成SQL数据库无法写入文件时,可用两种方法: 方法一:清空日志。 1.打开查询分析器,输入命令 DUMP TRANSACTION 数据库名 WITH NO_LOG 2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。 另一种方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失。 方法二: 1: 删除LOG 分离数据库 企业管理器->服务器->数据库->右键->分离数据库 2:删除LOG文件 附加数据库 企业管理器->服务器->数据库->右键->附加数据库 此法生成新的LOG,大小只有多K。 注意:建议使用第一种方法。 如果想以后不让它增长 企业管理器--服务器--右键数据库--属性--事务日志--将文件增长限制为xM(x是你允许的最大数据文件大小) --SQL语句的设置方式: alter database 数据库名 modify file(name=逻辑文件名,maxsize=)

推荐整理分享Sqlserver 2000/2005/2008 的收缩日志方法和清理日志方法,希望有所帮助,仅作参考,欢迎阅读内容。

Sqlserver 2000/2005/2008 的收缩日志方法和清理日志方法

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

SQL Server 清理日志精品图文教程 SQLServer清理日志精品教程SQLServer数据库日志太大!如何清理SQLServer的日志呢?如何压缩SQLServer的日志呢?如何让SQLServer的日志变小呢?据

SQL行号排序和分页(SQL查询中插入行号 自定义分页的另类实现) (一)行号显示和排序1.SQLServer的行号A.SQL使用identity(int,1,1)和临时表,可以显示行号SELECTidentity(int,1,1)ASROWNUM,[DataID]INTO#1FROMDATASorderbyDataID;SELECT*FROM#1B.S

sql分类汇总及Select的自增长脚本 如图:其中Num是自增长列,Operation是分类标签,count是汇总数据脚本如下:selectNum=row_number()OVER(orderBYHT_Resv.OperationStatus),HT_Resv.OperationStatus,CASEHT_Resv.OperationStatus

标签: Sqlserver 2000/2005/2008 的收缩日志方法和清理日志方法

本文链接地址:https://www.jiuchutong.com/biancheng/348143.html 转载请保留说明!

上一篇:使用SqlBulkCopy时应注意Sqlserver表中使用缺省值的列(sqlserver bulkcopy)

下一篇:SQL Server 2000 清理日志精品图文教程

  • 负数怎么在excel里输入
  • 个税身份证验证不通过已经申报缴税
  • 经营性应收项目和经营性应付项目
  • 一次性发放年终奖怎么税务筹划
  • 固定资产清理期末可以有余额吗
  • 清算备付金的会计科目
  • 建筑业出售废旧电脑取的收入如何申报
  • 被投资方亏损怎么处理
  • 小规模纳税人核定征收怎么报税
  • 防暑降温费可以用工会经费吗
  • 增值税专用发票验票
  • 企业每季度预缴增值税
  • 增值税专用发票有效期是多长时间
  • 工会经费怎么做账务处理
  • 银行流水账单怎么查
  • 哪些电子发票可以没有发票章
  • 捐赠所得税视同销售怎么处理
  • 资本化利息金额
  • 王者荣耀通用铭文狩猎和隐匿
  • 暂估应付账款是什么科目
  • 呆账催讨原则是谁提出的
  • 委托检验报告能否作为处罚依据
  • 经营出租固定资产折旧额计入什么科目
  • 抵扣了进项税额
  • linux中安装命令
  • php 统计
  • php提供了________和___________两种复合数据类型
  • PHP:date_default_timezone_get()的用法_Date Time函数
  • 送货上门需要其他费用吗
  • 天猫提现到对公账户怎么做账
  • flex布局教程实例篇
  • 无标题节啥意思
  • 应收账款科目怎么看
  • 企业的借款费用怎么入账
  • 合伙企业个人所得税税率表
  • 金税盘 解锁
  • url静态化怎么操作
  • phpcms迁移
  • 金税三期个人所得税申报
  • 个体户季度免多少税
  • 购买的烟酒怎么入账
  • 个体户的税收政策
  • 哪些情况需要开具无违法犯罪证明
  • 社保里面的住房公积金买房可以便宜多少
  • 小规模纳税人企业所得税怎么算
  • 在建工程包括哪些大类科目
  • 分公司是否具有独立承担民事责任的能力
  • 职工薪酬纳税调整明细表税收金额
  • 城投公司是什么东西
  • 哪些合同不用交社保
  • 收到红字发票账务处理应附哪些资料呢
  • 期初建账库存现金如何填写
  • 佣金支付给谁
  • 预付卡发票如何做分录
  • 其他应付款贷方表示什么意思
  • 现金流量的折现值公式
  • Sql Server 2000 行转列的实现(横排)
  • mysql怎么修改列的类型
  • archlinux安装zsh
  • freebsd ntfs
  • win8 网络连接
  • ubuntu命令行添加用户
  • win7不同用户下装不同软件
  • shell数值比较
  • Win10 Mobile 10586无法更新应用怎么办 一招教你解决
  • 关于我和鬼变成家人的那件事
  • Jquery+Ajax+PHP+MySQL实现分类列表管理(上)
  • node执行js文件的命令是什么
  • jquery select2的使用心得(推荐)
  • 命令行批处理文件
  • 批处理文件是将需要连续使用的可多次重复使用的
  • Unity3D游戏开发(第2版)pdf
  • Android自定义控件高级进阶与精彩实例
  • js中如何在div里写入内容
  • 深圳少儿电子医保卡怎么用
  • 施工企业建筑机械管理机构主要职责是负责建筑机械的
  • 黑龙江省电子税务局官网下载
  • 如何开具红字发票明细
  • 广西小学成绩查询入口官网
  • 杭州市电子税务局官网登录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设