誤ってログインするにはSQLメモリが少なすぎるため、どうすれば修正できますか?


14

SQL Serverインスタンスの最大メモリを15 MBに減らしました...今、それを増やすためにログインできません。ログインせずに最大メモリを増やすにはどうすればよいですか?

バージョンはSQL 2008 R2です

回答:


18

専用管理者接続(DAC)を使用して接続します。これは、まさにこのような問題を解決するために最小限のリソースが保証されています。たとえば、Management Studioを介して接続している場合は、[新しいクエリ]ウィンドウを起動し、接続のプロンプトが表示されたときではADMIN:servernameなく、単にservername入力します。オブジェクトエクスプローラー、データベースドロップダウンリスト、IntelliSenseなどに関連付けられているため、通常は害のないエラーを無視します。ユーザーに代わって接続しようとします(1つのDAC接続のみが許可されます)。

詳細はこちらこちらトラブルシューティングはこちら


7

または(以前に2回発生し、DACトリックが機能しなかったため)、SQL Serverサービスをシャットダウンしてから、「最小構成」モード(シングルユーザーモードの修正版)に戻します。

コマンドラインを介して、サービスにリストされているsqlservr.exe実行可能ファイルのパスに移動します。ただし、実行sqlservr.exe -mする代わりにを使用しますsqlservr.exe -f"sqlcmd"。これにより、指定されたアプリケーションからの接続のみが許可されるため、他のすべてが失敗しますが、接続し、設定を変更し、SQLCMD内からSHUTDOWNコマンドを発行して、正常に起動できます。


4

コマンドプロンプトから、専用管理者接続(DAC)を使用してsqlCmdを起動します。:

    C:\> sqlcmd -Sサーバー名-U sa -P -A

接続したら、次を実行してメモリを4Gigsに設定します。Management Studioツールを使用して再接続できるようにするのに十分なはずです。

sp_configure 'show advanced options'、1;  
行く  
再構成;  
行く  
sp_configure 'max server memory'、4096;  
行く  
再構成;  
行く  

DACの詳細:専用管理者接続(DAC)https://msdn.microsoft.com/en-us/library/ms189595 ( v= sql.105) .aspx


3

私はちょうど同じ問題を抱えていて、SSMSまたはDACを起動することができなかったので、これがパニックに陥っている次の人に役立つことを願っています。

サーバーでSQL Server構成マネージャー(SQL 2017を実行しています)を起動し、左側のペインで[SQL Serverサービス]を選択し、右側のペインで[SQL Server(MSSQLSERVER)]を右クリックしました「プロパティ」を選択します。[プロパティ]ウィンドウで、[スタートアップパラメーター]タブに移動し、 "-f"スタートアップパラメーターを追加しました。SQLサービスを再起動し、「最小構成」モードで起動しました。その後、SSMSに入り、最大メモリ設定を修正することができました。次に、「スタートアップパラメータ」タブに戻り、「-f」パラメータを削除して、サービスをもう一度再起動しました。


1

同じ問題、誤ってメモリが低くなりすぎた。DACを使用して接続できませんでした。次の操作を行いました。

  1. net start "SQL Server (MSSQLSERVER)" /f /m
  2. サーバー上のSSMSを使用して直接接続し、プロパティにアクセスして正しいメモリ設定を設定できました。

1

これは、net start / stopコマンドを使用するか、sqlserver.exeコマンドによって実行されます。最初にnet start / stopコマンドでどのように実行されるかを確認しましょう。netstart / stopコマンドの構文はNET STARTです。サービス名は次のように取得できます。

  1. 「RUN」ウィンドウにservices.mscと入力し、「OK」をクリックします。これにより、サービスダイアログボックスが開きます。
  2. サービス名を取得するSQL Serverインスタンスに移動し、ダブルクリックします。これにより、そのインスタンスのプロパティダイアログボックスが開きます。リストされているサービス名をコピーします。
  3. ---有効化サービスはシングルユーザーモードです

    C:\ Program Files \ Microsoft SQL Server \ 130 \ Tools \ Binn> net start "SQL Server(MSSQLSERVER)" / f / m SQL Server(MSSQLSERVER)サービスが開始されています。SQL Server(MSSQLSERVER)サービスが正常に開始されました。サーバー上のSSMSを使用して直接接続し、プロパティにアクセスして正しいメモリ設定を設定できました。または、以下のコマンドを実行します。-sp_configure 'show advanced options'、1; 再構成に進みます。GO sp_configure 'max server memory'、4096; 再構成に進みます。行く

-サービスを停止してシングルユーザーモードから抜け出す

C:\Program Files\Microsoft SQL Server\130\Tools\Binn>net stop "SQL Server (MSSQL
SERVER)"

SQLインスタンスをマルチユーザーモードで開始するには、上記のようにnet stopを使用してサービスを停止し、次に示すように\ mパラメーターを指定せずに開始します。

C:\Program Files\Microsoft SQL Server\130\Tools\Binn>net start "SQL Server (MSSQLSERVER)"
The SQL Server (MSSQLSERVER) service is starting.
The SQL Server (MSSQLSERVER) service was started successfully.

ここで注意すべきことの1つは、SQL Serverインスタンスを開始しても、SQL Serverエージェントサービスが開始されないことです。SQL Serverエージェントを起動するには、上記で共有したメソッドを使用してサービス名を取得し、上の画像に示すように起動します。または、サービスに移動して有効にします。

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