SQL Server中是否有任何方法来使用SQL查询来识别日志文件中的已用空间?我们如何识别日志文件中的已用空间?
-2
A
回答
1
使用DBCC命令
dbcc Sqlperf('logspace')
在我的本地机器,它提供了以下..
Database Name Log Size (MB) Log Space Used (%) Status
master 1.242188 50.9434 0
tempdb 0.7421875 63.81579 0
model 0.4921875 81.74603 0
msdb 1.992188 33.92157 0
如果你想知道VLF计数每个VLF的每个日志文件和状态(活跃部分或日志的非活动部分),您也可以使用以下内容,但这是数据库特定的
Dbcc loginfo
0
您不能RY使用
select size, * from sys.database_files
+0
这将不会给使用空间 – TheGameiswar
+0
虽然这段代码可能有助于解决问题,它不解释_why_和/或_how_它回答了问题。提供这种附加背景将显着提高其长期教育价值。请[编辑]您的答案以添加解释,包括适用的限制和假设。 –
1
Four Ways to Find Free Space In SQL Server Database(easy to find on Google ...)
sp_spaceused
或
DBCC SQLPERF(logspace)
或
DBCC SHRINKFILE(logfile_here)
或
SELECT DB_NAME() AS DbName, name ASFileName, size/128.0 AS CurrentSizeMB,
size/128.0 - CAST(FILEPROPERTY(name,'SpaceUsed') AS INT)/128.0 AS FreeSpaceMB
FROM sys.database_files;
伙计们,你为什么要奉献我? – Singh
谷歌或其他搜索引擎被禁止在我的公司,所以我能做些什么..在滴答否定你应该问一次.. – Singh
我的观点是关于做一个小研究... MSDN,SQL服务器书籍在线,stackoverflow ...等等。只是试图解释为什么你downvoted(顺便说一句,我没有downvote你) – KornMuffin