それ以外の点では優れた記事「トラブルシューティング:システム管理者がロックアウトされたときのSQL Serverへの接続」で、著者はSQL Serverの制御を回復するために私たちがしなければならないすべては
"-mまたは-fオプションを使用して、SQL Serverのインスタンスをシングルユーザーモードで起動します。コンピューターのローカルAdministratorsグループのメンバーは、sysadmin固定サーバーロールのメンバーとしてSQL Serverのインスタンスに接続できます。 」
残念ながら、シングルユーザーモードで起動することの意味は直感的な問題ではありません。また、少なくとも私の経験では、私のコンピューターのローカル管理者グループのメンバーシップでは、「ユーザー」アカウントにsysadminステータスが付与されませんでした。
この話は、DC以外のサーバーによるドメインのメンバーシップの問題(ISPの変更の結果)に対処するときに始まったので、DCを2008年からWindows Server 2008 R2に再構築しました。これにより、いくつかの小さな問題が解決しましたが、対処できませんでした誤ったサーバーによるメンバーシップの問題。これを達成するには、ServerFaultで提案された修正が必要でした(私の場合、winsockとtcpipをリセットすることでした)。
SQL Server 2008は、2番目のサーバー(ドメインのメンバー)に存在します。ここに問題があります。ServerFaultについて誰かが指摘しているように、Server 2008をインストールするときは、「現在のユーザーをsysadminにする」をプッシュするのが一般的です。他の人を考慮しないことも一般的です。その単一のユーザーIDは存在しないドメインのドメインメンバーだったため、SQL Serverを管理する権限がありませんでした。
SQL Serverのインストール時にいたローカルサーバー管理者としてログオンしましたが、これによりManagement Studioにアクセスできましたが、BUILTIN \ Administratorsには "パブリック"サーバーロールしか割り当てられていないことがすぐにわかりました。
多くの調査と実験の後、シングルユーザーログオンの詳細を示す記事http://technet.microsoft.com/en-us/library/ms180965.aspxに遭遇しました。
C:\>cd \Program Files\Microsoft SQL Server\MSSQL10_50.1\MSSQL\Binn
C:\...>sqlservr.exe -m
このステップを実行する準備をするには、SQL Serverをシャットダウンする必要があります(ほとんどの場合、デフォルトで実行されます)。SQL構成マネージャーを使用して、「SQL Server」を停止します。
次に、コマンドプロンプトで、そのプログラムファイルの場所(またはマシン上の同等の場所)に移動し、「sqlservr.exe -m」コマンドを発行します。コマンドプロンプトに記録された一連のアクティビティを確認できれば、問題はありません。起動に失敗した場合は、おそらくSQL Serverが既に実行されています。シャットダウンして。
シングルユーザーインスタンスがデータベースに接続できるようにします。ログアクティビティが停止したら、Management Studioを開きます。自動的にシングルユーザーモードになります。したがって、あなたが表すアカウントはすべてsysadminになります。その権限を使用して、セキュリティログインとサーバーの役割を調整します。
私の場合、新しいドメインでドメインアカウントを再作成し、SQL Serverでそれらの名前を削除し、それらを再構築して(SID / GUIDの状況により)、必要に応じて特定のデータベースへのアクセス許可を再割り当てする必要がありました。