2011-07-05 12 views
8

私はオンラインでマルチユーザに設定したいオフラインの2008 SQLデータベースを持っています。新しいクエリウィンドウ - - SQL Serverの管理Studioを使用して、私は次のことを実行したとき:データベースを 'online'に変更し、dbを 'multi-user'に設定してください

メッセージ5064、レベル16、状態1、行1 への変更:

ALTER DATABASE mydb SET ONLINE; 

    ALTER DATABASE mydb SET MULTI_USER; 

私は、このエラーメッセージが表示されます。この 時には、 データベース 'mydb'の状態またはオプションを作成できません。データベースはシングルユーザーの モードです。ユーザーは現在 に接続されています。
メッセージ5069、レベル16、 状態1、行1変更データベース ステートメントが失敗しました。メッセージ5064、レベル16、 状態1、行3の状態 の変更またはデータベース 'mydb'のオプションは現在 にできません。データベースはシングルユーザーモードで であり、ユーザーは現在 に接続しています。 Msg 5069、 レベル16、状態1、行3 ALTER DATABASEステートメントが失敗しました。

データベースをオンラインとマルチユーザーモードにするにはどうすればよいですか?

答えて

6

あなたがそのデータベースに入室していないことを確認してください。あなたはそれを持ってできるようにする必要があり

USE [master]; 
GO 

ALTER DATABASE mydb SET SINGLE_USER WITH ROLLBACK IMMEDIATE; 
GO 

:これを実行するなど、それに接続されているすべてのクエリウィンドウを閉じて、そのサーバーに接続されているオブジェクトエクスプローラせずにオブジェクトエクスプローラの詳細、近くSSMS、再オープン、それをシャットダウンオンラインの場合は、リストしたコマンドを実行します。

+2

USE [master]; GO 変更データベースmydb SET MULTI_USER WITH ROLLBACK IMMEDIATE; GO – FiveTools

+1

問題は、開いているトランザクションを持つ1人のユーザーが、状態の変更を妨げている可能性があることです。私は最初にそのユーザーを追い出すことなく、multi_userに直接設定しようとしたことはありません。どちらの場合でも、コードより前の提案のいずれかが必要なものである可能性があります。 –

0

まあ、管理ツール>サービスで特定のデータベースサービスを停止しました。次に、データベースサーバを右クリックしてオプションを取得し、stausをマルチユーザモードに変更しました。

関連する問題