SourceOne: SourceOne SQL 데이터베이스를 새 SQL Server로 이동한 후 사용자가 매핑된 폴더의 권한을 수정할 수 없음
Summary: SourceOne SQL 데이터베이스를 새 SQL Server로 이동한 후 사용자가 매핑된 폴더의 권한을 수정할 수 없습니다.
Symptoms
EMC SourceOne SQL 데이터베이스를 새 SQL Server로 이동한 후에는 사용자가 매핑된 폴더의 사용 권한을 수정할 수 없습니다. 매핑된 폴더에 사용자를 추가하거나 사용 권한을 변경하면 적용되지 않을 수 있습니다. 오류가 표시되지 않습니다. 대화 상자를 닫았다가 다시 열면 권한이 적용되지 않은 것입니다. 경우에 따라 MMC에 잘못된 포인터 오류가 표시될 수 있습니다.
Invalid pointer (0x80004003) [ExMMCAdmin.dll, CoExFolderMgr.cpp(916).CCoExFolderMgr::AddPrincipleToList]
>System call failed. (0x86040100) [ExMMCAdmin.dll, CoExFolderMgr.cpp(460).CCoExFolderMgr::SaveFolder]
>Invalid pointer (0x80004003) [ExMMCAdmin.dll, CoExFolderMgr.cpp(916).CCoExFolderMgr::AddPrincipleToList]
>System call failed. (0x86040100) Unknown error (0x8004C350) [ExMMCAdmin.dll, CoExJDFDB.cpp(868).CoExJDFDB::ExecuteCmd]
Stack Trace:
at EMC.Interop.ExProviderGW.CoExJanusFolderClass.Save()
at EMC.EX.MMCAdmin.JDFForms.ExFolderMgrPropertySheet.SaveChanges(Boolean& bOKToClose)
Message : ExCreateDataSrcCacheApp @AppID=<#>,@AppRowID=<#>,@DataSourceID=<#>,@ExpansionMask=<#>
: <ServerName>
Message : System call failed. (0x86040100) Unknown error (0x8004C350) {Error 60006, severity 11, state 1 was raised, but no message with that error number was found in sys.messages. If error is larger than 50000, make sure the user-defined message is added using sp_addmessage. Error#:18054 Proc:ExCreateDataSrcCacheApp Line:62 Native error: 50000 SQL State: 42000 }
JobId : -1
ActivityId : -1
ActivityType : -1
ExMMCAdmin.dll.log는 시도가 실패할 때마다 다음 오류를 기록할 수 있습니다.
Module : CoExJDFDB.cpp
Func : CoExJDFDB::CreateDataSrcCacheApp(6130)
Message : System call failed. (0x86040100) Unknown error (0x8004C350) {Error 60006, severity 11, state 1 was raised, but no message with that error number was found in sys.messages. If error is larger than 50000, make sure the user-defined message is added using sp_addmessage. Error#:18054 Proc:ExCreateDataSrcCacheApp Line:62 Native error: 50000 SQL State: 42000 }
Cause
Resolution
SQL Server의 Master 데이터베이스에 message_Id 값 60006 및 60007에 대한 sys.messages 항목이 포함되어 있지 않은지 확인합니다. 다음 쿼리는 이러한 항목을 확인할 수 있습니다.
Use master
Select * from sys.messages Where message_id = 60007
Select * from sys.messages Where message_id = 60006
항목이 sys.messages에 존재하지 않는 경우. 다음 SQL을 실행하여 만듭니다(모든 행을 강조 표시하고 실행).
IF NOT EXISTS(SELECT * FROM sys.messages WHERE message_id = 60006 and language_id = 1033)
exec sp_addmessage 60006,11,N'Duplicate object (%s)', N'us_english'--,@replace = 'replace';
GO
IF NOT EXISTS(SELECT * FROM sys.messages WHERE message_id = 60006)
exec sp_addmessage 60006,11,N'Duplicate object (%s)'--,@replace = 'replace';
GO
IF NOT EXISTS(SELECT * FROM sys.messages WHERE message_id = 60007 and language_id = 1033)
exec sp_addmessage 60007,11,N'Data modification check failed. Table(s):%s', N'us_english'--,@replace = 'replace';
GO
IF NOT EXISTS(SELECT * FROM sys.messages WHERE message_id = 60007)
exec sp_addmessage 60007,11,N'Data modification check failed. Table(s):%s'--,@replace = 'replace';
GO
이러한 변경 내용을 구현한 후 MMC가 매핑된 폴더에 대한 사용 권한을 수정할 수 있는지 확인합니다.