如何解决从SQL Server 2005数据库中删除几个表-创建新数据库还是使用旧数据库?
| 我正在杀死SQL Server数据库中的一堆表以移至存档数据库。当前的数据库有几个文件组,并且可以正常工作以增大仍然存在的表。不过,我将删除多个GB。 我应该建立一个新的数据库并将当前表移到那里吗?我对没有正确设定增长感到偏执。 实际上只有一个表可以看到很多活动-在四个月内最多可以增加约14,000行解决方法
这取决于您真正想做什么。如果使用新的数据库,则您现有的应用程序可能必须更改连接字符串以反映新的数据库名称。
如果您担心增长设置,请确保使用与预计增长数字接近的良好数字,并使用默认跟踪查找数据和日志文件的自动增长事件。查询如下。没有人能正确获得尺寸,您会根据可用数据做出最佳猜测并监控增长。如果您看到任何数据,请进行适当的更改以增加数字。与SQL Server可以处理的情况相比,在4个月内的14000行也不认为是活动的。
DECLARE @filename VARCHAR(255)
SELECT @FileName = SUBSTRING(path,LEN(path)-CHARINDEX(\'\\\',REVERSE(path))+1) + \'\\Log.trc\'
FROM sys.traces
WHERE is_default = 1;
--Check if the data and log files auto-growed.
SELECT
gt.ServerName,gt.DatabaseName,gt.TextData,gt.StartTime,gt.Success,gt.HostName,gt.NTUserName,gt.NTDomainName,gt.ApplicationName,gt.LoginName
FROM [fn_trace_gettable](@filename,DEFAULT) gt
JOIN sys.trace_events te ON gt.EventClass = te.trace_event_id
JOIN sys.databases d ON gt.DatabaseName = d.name
WHERE EventClass in ( 92,93 ) --\'Data File Auto Grow\',\'Log File Auto Grow\'
ORDER BY StartTime;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。