清理SQL Server 2008数据库日志
第一步, 在收缩前先查看日志的大小:
SELECT *
from sysfiles
WHERE name LIKE ' % LOG %'
GO
第二步, 把数据库的恢复模式设成”简单”:
ALTER DATABASE 库名 SET RECOVERY SIMPLE
GO
第三步, 运行checkpoint指令, 把dirty page写进数据库:
CHECKPOINT
GO
第四步, 截断日志:
BACKUP LOG 库名 WITH NO_LOG
GO
第五步, 记录一下日志名为下一步做准备:
SELECT Name
from sysfiles
WHERE name LIKE ' % LOG'
GO
第六步, 收缩日志文件, 把不用的空间释放给操作系统:
DBCC SHRINKFILE (文件名, 所需大小)
GO
第七步, 验证一下日志大小是否达到所需大小了:
SELECT *
from sysfiles
WHERE name LIKE ' % LOG % '
GO
后续步骤:
1)查看你的主要数据库, 看看日志增长是否失控;
2)查看上面的代码, 并进行必要修改和测试以适应你的数据库要求;
3)定期收缩数据库 ----(注: 慎用!! 不建议用在production环境里.)
4)继续监控数据库大小和服务器上的可用空间大小.
相关文档:
1、查询两个时间之间
select * from [tablename] where date between \'value1\' and \'value2\'
2、显示最后回复时间
select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b
3、日程安排提前5分钟提醒
select * from 日程安排 w ......
如何判断字段是否存在
if col_length('表名','字段1') is null ALTER TABLE 表名 ADD 字段1 Nvarchar(50) if col_length('表名','字段2') is null ALTER TABLE 表名 ADD 字段2 Nvarchar(50) ");
删除字段
if col_length('表名','字段1,') is not null ALTER TABLE 表名 drop c ......
下载地址:http://msftdbprodsamples.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=19353
我下载的是SQL2008.AdventureWorks_All_Databases.x86.msi,本不想下载这种安装文件,但脚本文件总是执行出错,原因没具体深究。这种安装文件安装后会创建六个库AdventureWorks、AdventureWorks2008、AdventureWorksDW、Ad ......
转自:http://hi.baidu.com/cszoo/blog/item/2439a5f517c19c2dbc31093c.html
(1)
SELECT
表名=case when a.colorder=1 then d.name else '' end,
表说明=case when a.colorder=1 then isnull(f.value,'') else '' end,
字段序号=a.colorder,
字段名=a.name,
标识=case when COLUMNPROPERTY( a.id,a.name,' ......