在 SQL Server 中验证 Workflow Manager 工作空间的文件组存储

复杂程度: 初级 数据要求: ArcGIS Tutorial Data for Desktop
注注:

对示例进行复制和粘贴可能会导致语法错误。

验证存储

确保工作空间创建于正确的文件组下,从而可以进行适当的数据存储并减缓磁盘争用情况。使用之前修改的 DBTUNE 配置,可在 SQL Server Management Studio 中运行以下脚本示例。

设置当前数据库。

USE WMXDB
GO

列出特定数据库中的所有文件组和数据文件。

EXEC sp_helpdb wmxdb
GO

列出特定文件组的数据文件。本示例将列出 PRIMARY 文件组的数据文件。

EXEC sp_helpfilegroup 'PRIMARY'
GO

按文件组列出表。

SELECT USER_NAME(o.uid) [Owner],
 OBJECT_NAME(i.id) [Table Name], 
 FILEGROUP_NAME(groupid) AS [Filegroup Name]
 FROM sysindexes i inner join sysobjects o
 ON i.id = o.id
 WHERE i.indid IN (0, 1) AND OBJECTPROPERTY(i.id, 'IsMSShipped') = 0 AND
 USER_NAME(o.uid) = 'wmx' 
 ORDER BY 1,3,2
GO

按表和文件组列出索引。

select 'owner'=user_name(o.uid) 
,'table_name'=object_name(i.id),i.indid
,'index_name'=i.name ,i.groupid
,'filegroup'=f.name ,'file_name'=d.physical_name
,'dataspace'=s.name from sys.sysindexes i
,sys.sysobjects o,sys.filegroups f 
,sys.database_files d, sys.data_spaces s
where objectproperty(i.id,'IsUserTable') = 1
and i.id = o.id
and f.data_space_id = i.groupid
and f.data_space_id = d.data_space_id
and f.data_space_id = s.data_space_id
and user_name(o.uid) = 'wmx'
order by object_name(i.id),i.name,f.name
GO

如果任何表或索引存储在错误的文件组中,则可使用 ALTER TABLE 和 ALTER INDEX 来更改文件组。有关详细信息,请参阅《SQL Server 联机丛书》

在 SQL Server Management Studio 中,还可以重新创建表和索引的 DDL 脚本,然后可以在“创建脚本”中修改文件组参数并在正确的文件组中重新创建表和索引。在表为空且允许重新创建数据库对象时,此操作尤其有用。

5/10/2014