我从https://support.microsoft.com/en-us/kb/2904712 查看相关描述并下载补丁进行安装。
Issues
Update Rollup 1 for System Center 2012 R2 Virtual Machine Manager resolves the following issues:
- System Center 2012 R2 Virtual Machine Manager cannot deploy a new or imported VMWare template.
- A virtual machine with that uses VHDX cannot be refreshed correctly in System Center 2012 R2 Virtual Machine Manager, and you receive the following error message:
Refresh job failed with error 2912: The requested operation cannot be performed on the virtual disk as it is currently used in shared mode (0xC05CFF0A)
- Database operations sometimes fail with "FailedToAcquireLockException."
- A new virtual machine template from a template that specifies an operating system profile doesn‘t use credentials from the operating system profile.
- Virtual machines in VMWare that connect by the using Cisco N1000V dvSwitch are unavailable for management from Virtual Machine Manager.
- System Center Virtual Machine Manager service crashes if you disable one of the teamed network adapters.
- The Get-Scstoragearray -host command should return storage arrays that are visible to a host that is using zoning.
- During the discovery of a network-attached storage (NAS) provider, the credentials that are used do not include a domain name.
- Some localized strings are not displayed correctly in the UI.
- A query to find the certificate should match both the subject name and the friendly name because FindBySubjectName is a wildcard search.
- Template deployment fails, and you receive the following error message:
Error (2904)
VMM could not find the specified path on the <Server name> server.
The system cannot find the path specified (0x80070003) - Virtual Hard Disk (VHD) cannot be mounted on a host because VHD conflicts with other disks because of a stale entry that was left in the dictionary of Virtual Machine Manager memory.
- Differencing disk based deployment may fail because the parent disk is being refreshed as noncached.
VMM server和控制台安装都正常。但是在执行文章中提供的SQL脚本:
/* script starts here */ALTER Procedure [dbo].[prc_RBS_UserRoleSharedObjectRelation_Insert]( @ID uniqueidentifier, @ObjectID uniqueidentifier, @ObjectType int, @RoleID uniqueidentifier, @UserOrGroup varbinary (85), @ForeignAccount nvarchar (256), @IsADGroup bit, @ExistingID uniqueidentifier = NULL OUTPUT)ASSET NOCOUNT ON SELECT @ExistingID = [ID] FROM [dbo].[tbl_RBS_UserRoleSharedObjectRelation] WHERE [ObjectID] = @ObjectID AND [RoleID] = @RoleID AND -- Select owner OR Select all which matches ForeignAccount or UserOrGroup OR -- both ForeignAccount and UserOrGroup is NULL (([UserOrGroup] = @UserOrGroup OR [ForeignAccount] = @ForeignAccount) OR ([UserOrGroup] IS NULL AND @UserOrGroup IS NULL AND [ForeignAccount] IS NULL AND @ForeignAccount IS NULL)) /* Ignore duplicate entries */ IF (@ExistingID IS NULL) BEGIN INSERT [dbo].[tbl_RBS_UserRoleSharedObjectRelation] ([ID] ,[ObjectID] ,[ObjectType] ,[RoleID] ,[UserOrGroup] ,[ForeignAccount] ,[IsADGroup] ,[IsOwner] ) VALUES ( @ID, @ObjectID, @ObjectType, @RoleID, @UserOrGroup, @ForeignAccount, @IsADGroup, 0 ) ENDSET NOCOUNT OFFRETURN @@ERROR/* script ends here */
时遇到如下错误
经检查发现是SQL语句有误,该空格没空格,该换行没换行。
我修改成下面这样后就可以正常执行了
/* script starts here */
ALTER Procedure [dbo].[prc_RBS_UserRoleSharedObjectRelation_Insert]
(
@ID uniqueidentifier,
@ObjectID uniqueidentifier,
@ObjectType int,
@RoleID uniqueidentifier,
@UserOrGroup varbinary (85),
@ForeignAccount nvarchar (256),
@IsADGroup bit,
@ExistingID uniqueidentifier = NULL OUTPUT
)
AS
SET NOCOUNT ON
SELECT @ExistingID = [ID]
FROM [dbo].[tbl_RBS_UserRoleSharedObjectRelation]
WHERE [ObjectID] = @ObjectID AND [RoleID] = @RoleID AND
-- Select owner OR Select all which matches ForeignAccount or UserOrGroup OR
-- both ForeignAccount and UserOrGroup is NULL
(([UserOrGroup] = @UserOrGroup OR [ForeignAccount] = @ForeignAccount) OR
([UserOrGroup] IS NULL AND @UserOrGroup IS NULL AND [ForeignAccount] IS NULL AND @ForeignAccount IS NULL))
/* Ignore duplicate entries */
IF (@ExistingID IS NULL)
BEGIN
INSERT [dbo].[tbl_RBS_UserRoleSharedObjectRelation]
([ID]
,[ObjectID]
,[ObjectType]
,[RoleID]
,[UserOrGroup]
,[ForeignAccount]
,[IsADGroup]
,[IsOwner]
)
VALUES
(
@ID,
@ObjectID,
@ObjectType,
@RoleID,
@UserOrGroup,
@ForeignAccount,
@IsADGroup,
0
)
END
SET NOCOUNT OFF
RETURN @@ERROR
/* script ends here */