Я пытаюсь перенести данные из Сервер управления контентом Microsoft (MCMS) 2002 экземпляр в новый Сервер Microsoft Office Sharepoint (MOSS) 2007 установка с помощью Управление профилями миграции Microsoft Content Management Server инструмент в Операции пространство Центральное управление МОСС.
При анализе профиля я получаю 4 предупреждения, все из которых можно игнорировать, но когда я действительно выполняю профиль миграции, я получаю те же предупреждения и дополнительную ошибку с описанием:
Line 6: Incorrect syntax near ';'.
Я видел эту ошибку много раз, когда копался в SQL Server и распознал ее как сообщение об ошибке Transact SQL, но не могу найти фактический оператор SQL, который выполняется, чтобы я мог определить источник ошибки.
РЕДАКТИРОВАТЬ: После включения подробного журнала на Миграция MCMS 2002 категории и просматривая Единая служба ведения журнала (ULS) logs, я получил более полную трассировку стека в момент ошибки и еще пару аномалий, перечисленных ниже.
Аномалии: Ниже приводится сокращенный список журналов ULS на момент предварительного анализа миграции.
01 MCMS 2002 Migration Verbose Start ConnectionCheck
02 MCMS 2002 Migration Verbose End ConnectionCheck
03 MCMS 2002 Migration Verbose Start DatabaseCheck
04 MCMS 2002 Migration High Extra table SiteDeployLock will not be migrated
05 MCMS 2002 Migration High Analysis: Extra index PK__SiteDeployLock__05D8E0BE
06 MCMS 2002 Migration Verbose End DatabaseCheck
07 MCMS 2002 Migration Medium Pre-migration analysis: RootCheckTask is skipped because database check is blocked.
08 MCMS 2002 Migration Medium Pre-migration analysis: RightsGroupNameCheckTask is skipped because database check is blocked.
09 MCMS 2002 Migration Medium Pre-migration analysis: InvalidNameCheckTask is skipped because database check is blocked.
10 MCMS 2002 Migration Medium Pre-migration analysis: LeafNameCheckTask is skipped because database check is blocked.
11 MCMS 2002 Migration Medium Pre-migration analysis: LeafLengthCheckTask is skipped because database check is blocked.
12 MCMS 2002 Migration Medium Pre-migration analysis: TemplateNameCheckTask is skipped because database check is blocked.
13 MCMS 2002 Migration Medium Pre-migration analysis: TemplateCollisionCheckTask is skipped because database check is blocked.
14 MCMS 2002 Migration Medium Pre-migration analysis: PlaceholderCheckTask is skipped because database check is blocked.
15 MCMS 2002 Migration Medium Pre-migration analysis: CheckedOutItemsCheckTask is skipped because database check is blocked.
16 MCMS 2002 Migration Medium Pre-migration analysis: SubmittedItemsCheckTask is skipped because database check is blocked.
17 MCMS 2002 Migration Medium Pre-migration analysis: DeletedItemsCheckTask is skipped because database check is blocked.
18 MCMS 2002 Migration Medium Pre-migration analysis: UserCheckTask is skipped because database check is blocked.
19 MCMS 2002 Migration Medium Pre-migration analysis: FileSizeCheckTask is skipped because database check is blocked.
20 MCMS 2002 Migration Medium Pre-migration analysis: HostHeaderMapCheckTask is skipped because database check is blocked.
21 MCMS 2002 Migration Verbose Start Server check
22 MCMS 2002 Migration Verbose End Server check
23 MCMS 2002 Migration Verbose Start Server emptyness check
24 MCMS 2002 Migration Verbose End Server emptyness check
25 MCMS 2002 Migration Medium PreMigrationAnalyzer: Dry run starts
26 MCMS 2002 Migration Verbose CleanLockProcedure: start.
27 MCMS 2002 Migration High CleanLockProcedure: connection system lock is null
28 MCMS 2002 Migration Verbose Finished all tasks
29 MCMS 2002 Migration High PreMigrationAnalyzer ends with True
30 MCMS 2002 Migration Verbose Migration profile status is changed to AnalysisPassed
В частности, два Высокая предупреждения уровня в строках 4 и 5 отражаются в отчете о миграции как предупреждения при выполнении анализа перед миграцией или при запуске профиля миграции. Кроме того, в отчете о миграции появляются два других предупреждения, указывающих на две таблицы, содержащие данные (LayoutProperty
и NodeLayout
), который должен быть пустым. Согласно документации, предупреждения не являются достаточной причиной для прекращения миграции. Другие аномалии находятся в строках 7-20, указывающих на серию тестов, которые skipped because database check is blocked.
ULS не выдает никаких дополнительных предупреждений, указывающих на то, что проверка базы данных была заблокирована или завершена в исключительных обстоятельствах.
После переключения профиля с предмиграционный анализ к экспорт, есть одно предупреждение среднего уровня, что LastChangeTime is not set or incorrect. (null)
. Как и все пропущенные имена тестов и имена таблиц SQL из предупреждений, основные поисковые системы не могут (за исключением LayoutProperty
), чтобы найти ссылки на эти объекты или тесты.
Наконец, ниже добавляется раздел журнала, показывающий фактическую попытку динамической миграции:
01 MCMS 2002 Migration Medium LastChangeTime is not set or incorrect. (null)
02 MCMS 2002 Migration Verbose Set export lock
03 MCMS 2002 Migration Verbose CleanLockProcedure: start.
04 MCMS 2002 Migration Verbose CleanLockProcedure: end.
05 MCMS 2002 Migration Verbose Prepare for export
06 MCMS 2002 Migration Verbose Open connection...
07 MCMS 2002 Migration Verbose Create temporary stored procedures
08 MCMS 2002 Migration Verbose Create temporary tables...
09 MCMS 2002 Migration Verbose Initialize temporary tables...
10 MCMS 2002 Migration Verbose InitializeTemporaryTables: start
11 MCMS 2002 Migration Verbose Initialize export table...
12 MCMS 2002 Migration Verbose InitializeExportTable: start
13 MCMS 2002 Migration Verbose CleanLockProcedure: start.
14 MCMS 2002 Migration Verbose CleanLockProcedure: end.
15 MCMS 2002 Migration High Migration throws exception: Line 6: Incorrect syntax near ';'.. Stacktrace: at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at Microsoft.SharePoint.Publishing.Internal.Administration...
16 MCMS 2002 Migration High ....MigrationBatchCommand.ExecuteImmediate(String command) at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationBatchCommand.ExecuteWaitingCommands() at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationDBSerializer.SerializeSelectedExportObject(StringCollection objectAttribs) at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationDataAccess.InitializeExportTable(ScopeType scopeType) at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationDataAccess.InitializeTemporaryTables(DateTime lastChangeTime) at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationDataAccess.InitializeDatabase(DateTime lastChangeTime, Boolean isAnalysis, SqlConnection connection) at Microsoft.SharePoint.Publishing.Internal.Admin...
17 MCMS 2002 Migration High ...stration.MigrationDataAccess.InitializeDatabase(DateTime lastChangeTime, Boolean isAnalysis) at Microsoft.SharePoint.Publishing.Administration.ContentMigration.Export(MigrationDataAccess dataAccess) at Microsoft.SharePoint.Publishing.Administration.ContentMigration.MigrateInternal().
18 MCMS 2002 Migration Verbose MigrationProfile: GetInstance. Start.
19 MCMS 2002 Migration Verbose MigrationProfile: GetInstance. End.
20 MCMS 2002 Migration Verbose Migration profile status is changed to Failed
Трассировка стека неудачного синтаксического анализа команды SQL появляется в строках 15-17. Более чистая версия трассировки стека добавлена ниже.
Полная трассировка стека:
Migration throws exception: Line 6: Incorrect syntax near ';'.. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning( TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationBatchCommand .ExecuteImmediate(String command) at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationBatchCommand .ExecuteWaitingCommands() at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationDBSerializer .SerializeSelectedExportObject(StringCollection objectAttribs) at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationDataAccess .InitializeExportTable(ScopeType scopeType) at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationDataAccess .InitializeTemporaryTables(DateTime lastChangeTime) at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationDataAccess .InitializeDatabase(DateTime lastChangeTime, Boolean isAnalysis, SqlConnection connection) at Microsoft.SharePoint.Publishing.Internal.Administration.MigrationDataAccess .InitializeDatabase(DateTime lastChangeTime, Boolean isAnalysis) at Microsoft.SharePoint.Publishing.Administration.ContentMigration.Export (MigrationDataAccess dataAccess) at Microsoft.SharePoint.Publishing.Administration.ContentMigration .MigrateInternal().
Ни одна из этих данных журнала не указывает на то, что команда SQL не прошла проверку анализатором. Я проверил SQL-серверы, на которых размещены исходная и конечная базы данных, на предмет отслеживания запроса, но, похоже, ни один из них не вызвал состояние сбоя синтаксического анализа. Похоже, это произошло на сервере SharePoint.
Есть ли другие места, которые я должен исследовать, которые могут сказать мне, где найти источник ошибки?
Журналы ULS будут содержать данные, которые вы ищете. Включите ведение журнала SharePoint на подробный и начните копать.