SQL Serverのsysadminロールにユーザーを追加できません


9

SQL Server 2008 Management Studioを使用しています。現在のログオンアカウントは、マシンのローカル管理者グループに属しています。SQL Server 2008でWindows統合セキュリティモードを使用しています。

私の問題は、SQL Server Management Studioにログインした後、[セキュリティ/ログイン]でログイン名を選択し、[サーバーロール]タブを選択して、最後の項目を選択します-自分自身をこのグループ/ロールに所属させるためのsysadminですが、十分な権限がありません。何か間違っているアイデアはありますか?ローカル管理者は何でもできるはずだと思います。:-)


これはこの問題について何のMicrosoft用品です:msdn.microsoft.com/en-us/library/dd207004.aspx私はこのスクリプトをお勧めすることができます:archive.msdn.microsoft.com/addselftosqlsysadmin/Release/...

回答:


6

権限を設定しようとするセッションのログインには、権限が必要です。

では、使用しているログインはローカル管理者ですか?つまり、ローカル管理者グループには十分な権限がありません。

GUIもこれを実行しますsp_addsrvrolemember。これは言うが

新しいメンバーを追加するロールのメンバーシップが必要です。

したがって、ローカル管理者グループはsysadminのメンバーではありません。

編集:

解決するには:権限を持つログインを使用します。あなたはsp_helpsrvrolememberを使ってそれを見つけることができます


私の問題を解決するためのあなたのアドバイスは何ですか?
George2 2009

すべてのSQL Server 2008を再インストールせずに、回避策や解決策があるかどうかはわかりません!:-(
ジョージ

「権限のあるログインを使用する」-十分な権限を持つログインのリストを取得するにはどうすればよいですか?
George2 2009

おかげで、EXEC sp_helpsrvrolemember 'sysadmin'からリストされている唯一のメンバーがsaと呼ばれています。これはWindowsユーザーですか?Windowsユーザーリストからそのようなユーザーを見つけることができません。何か案は?
George2 2009

1
これは、Windowsユーザーではなく、予約済みのSQLログインです。SQL 2008のテストインストールでは、SQL Serverをインストールしたアカウントが一覧表示されます。
gbn 2009

4

それ以外の点では優れた記事「トラブルシューティング:システム管理者がロックアウトされたときの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の状況により)、必要に応じて特定のデータベースへのアクセス許可を再割り当てする必要がありました。


パラメータを設定する別の方法もあります。サービス、マネージャーを開き、右クリックメニューからサービスを選択してからプロパティを選択します。一般タブには、「開始パラメーター」編集があります。そこに必要なパラメータを入力します。次に、そのページの開始ボタンを使用してサービスを開始します。そこで設定されたパラメーターは永続的ではなく、[プロパティ]ダイアログからサービスを開始した場合にのみ有効です。
ldsandon 2010年

3

SQL Server 2008は、sysadmin固定サーバーロールのメンバーとしてBUILTIN \ Administratorsを追加しなくなりました

そのとおりですが、その場合は、SQL Serverサービスをシングルユーザーモード(緊急モード)で開始する状況から回復でき、ローカル管理者はログオンできます。

MSDNを参照してください。


2

デフォルトでは、SQLはグループBUILTIN \ Administratorsをsysadminロールに追加します。つまり、すべてのローカルNT管理者は自動的にSQL sysadminになります。Vistaでは、UACのため、この特権を利用するには「管理者として」モードで実行する必要があります。

  • Vistaを使用している場合は、クライアントツール(SSMS)を「管理者として」実行し、自分をsysadminとして追加してみます。
  • BUILTIN \ Administratorsグループがsysadminロールから誤って削除された場合は、別のsysadminログインでログインする必要があります。他のsysadminログインがない場合は、SQL認証を使用してsaとしてログインし、セットアップ中に設定されたsaパスワードを使用する必要があります。sysadminのメンバーとしてログインしたら、広告BUILTIN \ Admisnitratorsをsysadminロールに戻します。SQLログインが無効になっている場合、おめでとうございます。SQLのインストールからロックアウトするだけです。
  • BUILTIN \ Administratorsグループがsysadminロールから意図的に削除された場合(KB932881に従って)、権限のないシステムにハッキングしようとしています。

こんにちはレムス、私はインストールプロセス中に、saのパスワードをセットアップしないと混乱しています。デフォルトのパスワードはありますか?
George2 2009

もう1つの混乱は、ストアプロシージャsp_helpsrvrolememberを実行してすべてのsysadminロールのユーザーを検索し、saのみがリストされ、ローカルマシン管理者グループの他のユーザーがいないことです。
George2 2009

saにはデフォルトのパスワードはありません。混合認証が有効になっている場合、saのパスワードはセットアップ中に設定されます。必要に応じて、データベースの管理者にアクセス権の付与を依頼する必要があります。
Remus Rusanu 2009

「SQLログインが無効になっている場合、おめでとうございます。SQLのインストールからロックアウトされます。」その場合は、以下のJordiの回答を参照して、SQL Serverをシングルユーザーモードで起動してください。
Michiel van Oosterhout、2010年

1

既定では、SQL Server 2008はBUILTIN \ Administratorsをsysadmin固定サーバーロールのメンバーとして追加しなくなりました。インストーラーを実行すると、どのアカウントにsysadmin権限が必要かが尋ねられます。基本的に「make me a sysadmin」と書かれたボタンがあり、インストールを行っているユーザーのアカウントをsysadminとして追加します。

他のユーザーをsysadminsとして追加しなかった場合、そのユーザーのみが現在sysamdinです。そのユーザーにSQL Serverにログインしてもらい、DBAにsysadmin権限を付与する必要があります。


0

新しいインストール後、SQL Server 2008でサーバーを登録するまで同じ問題を検討しましたが、その後すべてが正常に行われました

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.