4

DB_1 データベースのバックアップを DB_2 データベースに復元するときに問題が発生しました。しかし、ユーザー dbo のログイン名がありません ()。ログイン名を再作成するにはどうすればよいですか?? SQL 2000 を使用しています

4

3 に答える 3

1

ここにいるのは、孤立したユーザーと呼ばれます。つまり、ユーザーは復元したデータベースに存在しますが、データベース サーバーでログインとして設定されていません。

ユーザーが Windows 統合ログインの場合は、ログインをデータベース サーバーに追加するだけで済みます。SQL Server ログインの場合は、少しトリッキーです。

孤立したユーザーが復元されたデータベースに存在するというレポートを取得するには、次を実行します。

USE restored_database
GO
exec sp_change_users_login @Action='Report';
GO

ログイン時にデータベースを再作成し、復元されたデータベースにリンクするには、次のコマンドを実行します。

EXEC sp_change_users_login 'Auto_Fix', 'user', 'login', 'password'
于 2009-08-10T14:19:05.207 に答える
0

復元されたデータベースで sp_dropuser 'user' を呼び出します。

ユーザーがサーバーに既に存在する場合は、復元されたデータベースへのアクセス許可をユーザーに付与します。それ以外の場合は、サーバーでユーザーを再作成してから、復元されたデータベースへのアクセス許可を付与します。

于 2009-09-23T00:39:20.470 に答える
-2

データベース所有者として「sa」を追加するため、バックアップをそのカタログに復元する前に、DB_2カタログのdb所有者ロールに「sa」を追加します。

ところで、失礼に聞こえたら申し訳ありませんが、stackoverflowは主にプログラミングの質問であり、sysadminの質問ではありません。sqlserver指向のボードで質問すると、より多くの応答が得られると思います。

于 2009-03-30T07:50:05.897 に答える