仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1005|回复: 9
打印 上一主题 下一主题

[学习教程] MSSQL网页设计怎样减少MS SQL Server日记文件

[复制链接]
山那边是海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:22:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。server办法一:
将数据库日记文件改成复杂日记形式
办法二:
DUMPTRANSACTION你的数据库名WITHNO_LOG
BACKUPLOG你的数据库名WITHNO_LOG
DBCCSHRINKDATABASE(你的数据库名)
EXECsp_dboption你的数据库名,autoshrink,TRUE办法三:
把代码COPY到查询剖析器里,,然后修正个中的3个参数(数据库名,日记文件名,和方针日记文件的巨细),运转便可(我已用过量次了)

-----
SETNOCOUNTON
DECLARE@LogicalFileNamesysname,
@MaxMinutesINT,
@NewSizeINT

USEMarias--要操纵的数据库名
SELECT@LogicalFileName=Marias_log,--日记文件名
@MaxMinutes=10,--Limitontimeallowedtowraplog.
@NewSize=100--你想设定的日记文件的巨细(M)

--Setup/initialize
DECLARE@OriginalSizeint
SELECT@OriginalSize=size
FROMsysfiles
WHEREname=@LogicalFileName
SELECTOriginalSizeof+db_name()+LOGis+
CONVERT(VARCHAR(30),@OriginalSize)+8Kpagesor+
CONVERT(VARCHAR(30),(@OriginalSize*8/1024))+MB
FROMsysfiles
WHEREname=@LogicalFileName
CREATETABLEDummyTrans
(DummyColumnchar(8000)notnull)


DECLARE@CounterINT,
@StartTimeDATETIME,
@TruncLogVARCHAR(255)
SELECT@StartTime=GETDATE(),
@TruncLog=BACKUPLOG+db_name()+WITHTRUNCATE_ONLY

DBCCSHRINKFILE(@LogicalFileName,@NewSize)
EXEC(@TruncLog)
--Wrapthelogifnecessary.
WHILE@MaxMinutes>DATEDIFF(mi,@StartTime,GETDATE())--timehasnotexpired
AND@OriginalSize=(SELECTsizeFROMsysfilesWHEREname=@LogicalFileName)
AND(@OriginalSize*8/1024)>@NewSize
BEGIN--Outerloop.
SELECT@Counter=0
WHILE((@Counter<@OriginalSize/16)AND(@Counter<50000))
BEGIN--update
INSERTDummyTransVALUES(FillLog)
DELETEDummyTrans
SELECT@Counter=@Counter+1
END
EXEC(@TruncLog)
END
SELECTFinalSizeof+db_name()+LOGis+
CONVERT(VARCHAR(30),size)+8Kpagesor+
CONVERT(VARCHAR(30),(size*8/1024))+MB
FROMsysfiles
WHEREname=@LogicalFileName
DROPTABLEDummyTrans
SETNOCOUNTOFF
但我们知道,若使用statement,并没有上述需要的数据。试想binlog中记录了一句updatetsetf1=3whereid=3。怎么恢复呢?
不帅 该用户已被删除
沙发
发表于 2015-1-19 09:50:49 | 只看该作者
其实可以做一下类比,Oracle等数据库产品老早就支持了java编程,而且提供了java池参数作为用户配置接口。但是现在有哪些系统大批使用了java存储过程?!连Oracle自己的应用都不用为什么?!
板凳
发表于 2015-1-26 16:30:29 | 只看该作者
sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西
老尸 该用户已被删除
地板
发表于 2015-2-4 20:30:49 | 只看该作者
从项目平台的选择上讲,我们关心的,应该是一款产品能不能满足任务需求,而不是网上怎么说。
因胸联盟 该用户已被删除
5#
发表于 2015-2-4 20:30:52 | 只看该作者
如果我们从集合论(关系代数)的角度来看,一张数据库的表就是一组数据元的关系,而每个SQL语句会改变一种或数种关系,从而产生出新的数据元的关系(即产生新的表)。
海妖 该用户已被删除
6#
发表于 2015-2-10 07:22:46 | 只看该作者
再开发调试阶段和OLAP环境中,外键是可以建立的。新版本中加入了SETNULL和SETDEFAULT属性,能够提供能好的级联设置。
若相依 该用户已被删除
7#
发表于 2015-3-1 03:16:57 | 只看该作者
不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理?
活着的死人 该用户已被删除
8#
发表于 2015-3-10 12:39:50 | 只看该作者
对于数据库来说,查询是数据库的灵魂,那么SQL查询效率究竟效率如何呢?下文将带对SQL查询的相关问题进行讨论,供您参考。
若天明 该用户已被删除
9#
发表于 2015-3-17 07:11:17 | 只看该作者
我们学到了什么?思考问题的时候从表的角度来思考问
蒙在股里 该用户已被删除
10#
发表于 2015-3-24 02:10:23 | 只看该作者
相信各位对数据库和怎么样学习数据库都有一些经验和看法,也会有人走了一些弯路总结出自己的经验来,希望大家能把各自的看法和经验拿出来分享,给别人一份帮助,给自己一份快乐
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 13:45

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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