转载于:http://blog.chinaunix.net/uid-9047380-id-14728.html
SQL SERVER Data目录产生大量trc文件
今天用服务器下载文件时,系统提示我硬盘分区空间不足了。点击查看硬盘分区是50GB,已经只剩下175MB了。而这个服务器应该没有什么大文件才对呀。
仔细查看,发现SQL Server 2005占用了差不多40GB的空间了,而SQL Server应该只运行了网站数据库才对,不可能那么大空间。再仔细查看,发现SQL Server的data目录占用了差不多38GB的空间,进入此目录下,发现了大量类似 audittrace20100102104348.trc的文件。
通过放狗搜索和群友的支持,找到原因和解决方法如下:
一、原因:
开启SQL Server (MSSQLSERVER) 的C2审核之后,当SQL Server启动后,默认在C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data下自动生成类似 audittrace20100102104348.trc的文件,用于对数据库的操作进行审核,以提高数据库的安全性。当单个文件超过200MB之后,会重新生成另外一个文件。
二、查看
可以用如下的SQL code来查看数据库的C2审核状况
sp_configure 'show advanced options',1
go
reconfigure
go
sp_configure 'c2 audit mode'
go
或者
select *
from sys.configurations
where name='c2 audit mode'
看一下c2 audit mode的config_value和run_value的值,如果启动了c2的审计,这两个值都是为1。而开启了c2审核,则会自动生成类似 audittrace20100102104348.trc的文件。
三、禁用
如果不需要c2审核的话,可以用如下SQL code禁用此功能
sp_configure 'c2 audit mode',0
go
reconfigure
go
然后再用如下SQL code查看一下
sp_configure 'c2 audit mode'
go
如果以前是启用了c2审核的,此时的config_value变为0了,但run_value还是为1。该配置需要重启动SQL Server的服务才能生效
用如下命令重启动SQL Server的服务:
打开cmd命令窗口,输入命令
net stop mssqlserver
来停止SQL Server服务,再用命令
net start mssqlserver
来启动SQL Server服务
重启动SQL Server服务之后,再执行SQL code查看
sp_configure 'c2 audit mode'
go
此时的config_value和run_value的值就都变为0了