5

AWS サーバー (IIS を使用した MS SQL SERVER EXPRESS 2008 R2) があり、エラスティック IP は 54.214.8.111、セキュリティ グループは HTTP、MS SQL、および FTP で構成されており、rdp ファイルを使用してリモート仮想マシンに接続できます。アマゾンはコンソールであなたに与えます。

ただし、データベースが機能しているかどうかをテストするために Visual Studio 経由で接続しようとすると、「ユーザー 'dbuser' のログインに失敗しました」というエラーが表示されます。SQL Server (もちろんサーバー側) に dbuser というユーザーがいます。すべてのガイドとヘルプ ドキュメントにもかかわらず、サーバー上の ftp に接続できません. 何かが単に接続をブロックしているようです. 複数のコンピューターで同じことを試しました.

サーバーインスタンスが疑わしいことを除いて、すべてが正しく構成されているようです。

誰でも助けることができますか?PS 私は Web 開発の初心者で、これが初めての AWS EC2 サーバーです。

[更新] 別の場所に新しいインスタンスを作成しようとしましたが、同じエラーが発生しました。EC2 で SQL Server を構成する方法がわからないのでしょうか?

4

1 に答える 1

18

最近、AWS/SQL Server への同じ接続の問題がありましたが、最終的に解決しました。

AWS で SQL Server にリモートで接続するには、AWS --> Windows セキュリティ --> SQL Server 設定/セキュリティの 3 つの主な要因が関係します。

各領域には特定の要件があるため、接続は簡単に失敗する可能性があります。チェックリストを確認します。

AWS:

  1. AWS マネジメント コンソールで、[セキュリティ グループ] に移動し、Windows サーバーに適用されるグループをクリックして、MS SQL TCP ポート 1433 が 0.0.0.0 または特定のクライアント IP に対して開いていることを確認します。そうでない場合は、追加する必要があります。

  2. サーバーのパブリック IP に注意してください

ウィンドウズ:

  1. Amazon Windows サーバーへの RDP、[スタート] > [管理ツール] > [ローカル セキュリティ ポリシー]
  2. [セキュリティが強化された Windows ファイアウォール]、[Windows ファイアウォールのプロパティ] の順にクリックし、[パブリック プロファイル] タブをクリックして、[ファイアウォールの状態] を [オン]、[受信] を [ブロック]、[送信] を [許可] (またはアプリケーションによってはブロック) に設定します。わかった。
  3. Windows ファイアウォール (左側のペイン) を展開し、[受信の規則] を右クリックして、[新しい規則] をクリックします。
  4. ポート オプションをクリックし、次へ > 、TCP の場合は 1433 と入力します 次へ >、接続を許可し、次へ >、次へ > 、名前を付けます (SQL-PORT-ACCESS)

SQLサーバー:

  1. デフォルトの Windows 認証を使用して、SSMS (SQL Server Management Studio) で SQL Server にログインします。
  2. 左ペインで、一番上のサーバー リスト (データベース アイコン、一番最初のリスト) を右クリックし、[プロパティ] を選択します。
  3. [プロパティ] ウィンドウで、左ペインの [セキュリティ] をクリックし、[SQL Server and Windows Auth] を選択します。
  4. [接続] をクリックし、[リモート接続を許可する] オプションをオンにします... [OK] をクリックします。
  5. SQL 構成マネージャーを開きます。[スタート] > [プログラム] > [Microsoft SQL Server] > [構成ツール] > [SQL Server 構成マネージャー]
  6. SQL Server ネットワーク構成 (展開)、[MSSQL のプロトコル] を選択し、[TCP] を右クリックし、[プロパティ] を選択します (TCP を有効にする必要があります)。
  7. [IP アドレス] タブをクリックし、IP1 が有効になっていること、動的ポートが 0、TCP ポートが 1433 であることを確認します。
  8. IPAll セクションまでスクロールし、TCP 動的ポートに 0 を入力し、TCP ポートに 1433 を入力します。わかった...
  9. 左ペインに戻り、[SQL Server サービス] をクリックし、[SQL Server] オプションを右クリックして、[再起動] を選択します。(注: SQL Browser サーバーは接続に影響を与えません。ブラウザー サービスは、特定の接続パラメーターを使用して利用可能なサーバーのみを一覧表示します。ブラウザーを起動したり心配したりする必要はありません)

テスト: リモート クライアントに行ってテストする必要はありません。まず、サーバー上の同じ SSMS ウィンドウから接続を試みます。これにより、最初にうまくいかない可能性のある他のすべてのことが減少します。ここで接続できれば、動作することがある程度確認されます。自分のサーバーからは機能しない場合、問題は Windows のセキュリティと SQL のセキュリティとセットアップに関連しています。

  1. オブジェクト エクスプローラー (SQL サーバー Management Studio) で、[接続] > [データベース エンジン...] をクリックします。
  2. [サーバー名:] に、PUBLIC IP、カンマ、1433. たとえば、パブリック IP が の場合54.4.4.4、 を入力54.4.4.4,1433します。
  3. 認証に「SQL Server」を選択し、ログインユーザーとパスワードを入力します。
    1. 「sa」を使用している場合は、忘れずにパスワードを変更してください。
    2. 接続がローカルで機能する場合は、リモート クライアント接続を試すことができます。
  4. この時点で、SQL サーバーとユーザーの設定が正しいことがわかります。

次に、別のコンピューターで SSMS を使用してみます。それが失敗した場合、おそらくファイアウォールには 2 回目の確認が必要です...

問題を理解するには、SQL ログに SSMS から簡単にアクセスできます。左側のペインで [管理] を展開し、次に [SQL Server ログ] を展開すると、現在のログに問題が一覧表示されます。

以上が関連するすべてのパーツです。1 つ見逃すとイライラすることになりますが、テストの際はパーツを減らすことから始めてください。

Windows デバイスから AWS Windows Server/SQL Express のデータベースに接続できました...

幸運を!

于 2014-11-07T20:41:10.563 に答える