5

SQL Server 2012 インスタンスでの変更データ キャプチャの設定に問題があります。テーブルで CDC を有効にしようとすると、次のエラーが発生します。

メッセージ 22832、レベル 16、状態 1、プロシージャ sp_cdc_enable_table_internal、行 623
テーブル [dbo] を示すメタデータを更新できませんでした。[TableName] が変更データ キャプチャに対して有効になっています。
コマンド '[sys].[sp_cdc_add_job] @job_type = N'capture'' の実行時にエラーが発生しました。
返されたエラーは 22836 でした: 「データベース [データベース名] のメタデータを更新して、変更データ キャプチャ ジョブが追加されたことを示すことができませんでした。コマンド 'sp_add_jobstep_internal' の実行中にエラーが発生しました。
返されたエラーは 14234 でした:「指定された '@server' は無効です (有効な値は sp_helpserver によって返されます)。」アクションとエラーを使用して失敗の原因を特定し、要求を再送信してください。アクションとエラーを使用して失敗の原因を判別し、要求を再サブミットしてください。

サーバーの名前は変更されていません。/ ソリューションを試したところsp_dropserversp_addserver次のエラーが表示されました。

メッセージ 15015、レベル 16、状態 1、プロシージャ sp_dropserver、行 42
サーバー 'ServerName' が存在しません。使用可能なサーバーを表示するには、sp_helpserver を使用します。

メッセージ 15028、レベル 16、状態 1、プロシージャ sp_addserver、行 74
サーバー 'ServerName' は既に存在します。

前述したように、レプリケーションではなく CDC をセットアップしようとしています。SQL Server のバージョン: 11.0.5058.0 (SQL Server 2012 SP2)

テーブルレベルでCDCを有効にしているときにエラーを確認し、その解決策を試しました。

私も試しました:

exec sys.sp_cdc_add_job @job_type = N'capture'

次のエラーが表示されます。

メッセージ 22836、レベル 16、状態 1、プロシージャ sp_cdc_add_job_internal、行 282
データベース [DatabaseName] のメタデータを更新して、変更データ キャプチャ ジョブが追加されたことを示すことができませんでした。コマンド 'sp_add_jobstep_internal' の実行中にエラーが発生しました。
返されたエラーは 14234 でした:「指定された '@server' は無効です (有効な値は sp_helpserver によって返されます)。」アクションとエラーを使用して失敗の原因を判別し、要求を再サブミットしてください。

どんな助けでも大歓迎です。

4

5 に答える 5

7

ここにリストされているように、名前が一致することを確認してください

SELECT srvname AS OldName FROM master.dbo.sysservers
SELECT SERVERPROPERTY('ServerName') AS NewName

そうでない場合は、次のように修正します。

sp_dropserver '<oldname>';  
GO  
sp_addserver '<newname>', local;  
GO  
于 2018-08-24T10:53:35.833 に答える
0

サーバーを追加すると、問題が修正されます。

DECLARE @ServerName NVARCHAR(128) = CONVERT(sysname, SERVERPROPERTY('servername'));
EXEC sp_addserver @ServerName, 'local';
GO
于 2016-05-06T20:14:56.793 に答える