データベース サーバーが複製されました。オペレーティング システムは"Microsoft Windows XP Professional Version 2002 Service Pack 3"
です。クエリ環境は"Microsoft SQL Server 2008 Management Studio 10.0.4000.0"
.
クローニング後、以下の挙動が確認されました。マシンの外部から同じドメイン内に接続しようとすると、次のエラー メッセージが表示される場合があります"Cannot generate SSPI context. (.Net SqlClient Data Provider)"
。
マシン内から、"Microsoft SQL Server 2008 Management Studio"
クエリ環境を使用してデータベース サーバーに接続できます。
ただし、SQLCmd
コマンド ライン ツールを実行しようとすると、次のエラーが表示されます。
C:\<Directory>>SQLCmd -S DBA2\<Instance> -i C:\<Directory>\<FileName>.SQL
HResult 0x80090322, Level 16, State 1
SQL Server Network Interfaces: The target principal name is incorrect.
Sqlcmd: Error: Microsoft SQL Server Native Client 10.0 : Cannot generate SSPI context.
はServicePrincipalNames
次のように設定されます。
C:\PROGRA~1\SUPPOR~1>setspn DBA2
Registered ServicePrincipalNames for CN=DBA2,CN=Computers,DC=<Company>,DC=com:
VProRecovery Backup Exec System Recovery Agent 7.0/DBA2.<Company>.com
HOST/DBA2
HOST/DBA2.<Company>.com
"C:\PROGRA~1\SUPPOR~1\ADSIEDIT.MSC"
Microsoft Windows XP Professional コンパクト ディスクからサポート ツールを実行すると、"ADSI Edit \ Domain [<Site>.<Company>.com] \ DC=<Company>,DC=com"
パスの下に"CN=Computers"
リーフが表示されます。その"Properties"
ダイアログ ボックスの"Security"
タブ内の"Group or user names:"
リストの下に、"SELF"
エントリがあります。ボタンを押す"Advanced"
と、"Advanced Security Settings for Computers"
ダイアログ ボックスが生成されます。"Permissions"
タブのリストの下には"Permission entries:"
、 Name のエントリもあり"SELF"
ます。ボタンを押す"Edit..."
と、"Permission Entry for Computers"
ダイアログボックスが表示されます。その"Properties"
タブの"Permissions:"
リストには、"Read ServicePrincipalName"
権限と権限のエントリはありません"Write ServicePrincipalName"
。
これが、次のコマンドが失敗する理由である可能性があります。
C:\PROGRA~1\SUPPOR~1>setspn -r DBA2
Registering ServicePrincipalNames for CN=DBA2,CN=Computers,DC=<Company>,DC=com
HOST/DBA2.<Company>
HOST/DBA2
Failed to assign SPN to account 'CN=DBA2,CN=Computers,DC=<Company>,DC=com', 0x2098
ServicePrincipalName
複製されたデータベース サーバーでをリセットするためのアクセス許可が設定されていたとしてもSQLCmd
、同じドメイン内で、マシンの外部と外部の両方からの接続を解決できますか?