ApsaraDB RDS for SQL Server インスタンスの初期設定が完了したら、Data Management (DMS) や Microsoft SQL Server Management Studio (SSMS) などのさまざまな方法で RDS インスタンスに接続し、必要な操作を実行できます。このトピックでは、これらの接続方法を使用して RDS インスタンスに接続する方法について説明します。
前提条件
RDS インスタンスが作成されていること。詳細については、「ApsaraDB RDS for SQL Server インスタンスの作成」をご参照ください。
RDS インスタンスにデータベースが作成され、そのデータベースのアカウントが作成されていること。詳細については、「アカウントとデータベースの作成」をご参照ください。
RDS インスタンスの IP アドレスホワイトリストが設定されていること。これにより、クライアントがデプロイされている Elastic Compute Service (ECS) インスタンスまたはオンプレミスデバイスから RDS インスタンスに接続できます。詳細については、「IP アドレスホワイトリストの設定」をご参照ください。
説明ECS インスタンスを内部ネットワーク経由で RDS インスタンスに接続する場合は、これらのインスタンスが同じリージョン内の同じ仮想プライベートクラウド (VPC) に存在し、ECS インスタンスのプライベート IP アドレスが RDS インスタンスの IP アドレスホワイトリストに追加されていることを確認してください。
オンプレミスデバイスを RDS インスタンスに接続する場合は、オンプレミスデバイスのパブリック IP アドレスが RDS インスタンスの IP アドレスホワイトリストに追加されていることを確認してください。
手順
DMS、クライアント、または Java アプリケーションを使用して RDS インスタンスに接続できます。
方法 1: DMS を使用して RDS インスタンスに接続する
DMS は、ライフサイクル全体にわたってデータを管理できるワンストップのデータ管理プラットフォームです。DMS を使用して、グローバルなデータ資産の管理、データの統制、データベースの設計と開発、データの統合、データの開発、データの消費を行うことができます。これらの機能は、企業が効率的かつ安全な方法でデータから価値を引き出し、企業のデジタルトランスフォーメーションを促進するのに役立ちます。詳細については、「DMS とは」をご参照ください。
DMS を使用して RDS インスタンスにログインし、RDS インスタンスの IP アドレスホワイトリストや接続タイプを設定することなく、データを管理および使用できます。
[インスタンス] ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけて、インスタンスの ID をクリックします。
表示されたページで、データベースにログイン をクリックします。

[データベースインスタンスにログイン] ダイアログボックスで、ログイン情報を入力し、[ログイン] をクリックします。

アクセスモード パラメーターを設定します。このトピックでは、[アカウント + パスワードログイン] が選択されています。
データベースアカウント と データベースパスワード パラメーターを設定します。このトピックでは、
testuserという名前の特権アカウントとカスタムパスワードが使用されます。[コントロールモード] パラメーターを設定します。このトピックでは、[柔軟な管理] が選択されています。
データベースを表示します。DMS コンソールの左側のナビゲーションウィンドウで、[データベースインスタンス] > [接続済みインスタンス] を選択して、作成したデータベースを表示します。このトピックでは、
dbtestという名前のデータベースが表示されます。データベースをダブルクリックすることもできます。

RDS インスタンスは存在するが、目的のデータベースが DMS コンソールの [接続済みインスタンス] ページに表示されない場合は、次の情報に基づいて問題をトラブルシューティングしてください。
ログインアカウントに、目的のデータベースに接続するための権限がありません。この場合、RDS インスタンスの アカウント管理 ページに移動し、ログインアカウントを見つけて、アクション 列の 権限の変更 をクリックして、必要な権限を付与します。
目的のデータベースのメタデータが同期されていません。この場合、目的のデータベースが属する RDS インスタンスにポインターを移動し、インスタンス名の右側にある
アイコンをクリックします。その後、目的のデータベースを見つけることができます。
DMS を使用して RDS インスタンスに接続した後、ビジネス要件に基づいて [SQL コンソール] タブで必要な操作を実行します。操作には、データベースとテーブルの作成、テーブルデータのクエリまたは変更が含まれます。
方法 2: SSMS クライアントを使用して RDS インスタンスに接続する
Microsoft SQL Server Management Studio (SSMS) クライアントは、SQL Server データベースを管理および処理できる GUI ツールです。SSMS は、RDS インスタンス、オンプレミスの SQL Server インスタンス、他のクラウドで SQL Server を実行しているインスタンスなど、さまざまな SQL Server データベースへの接続に使用できます。詳細については、「SQL Server Management Studio (SSMS) のダウンロード」をご参照ください。
このセクションでは、SSMS 19.0 を使用して RDS インスタンスに接続する方法の例を示します。
すべての SQL Server バージョンをサポートするために、最新バージョンの SSMS をダウンロードすることをお勧めします。
クライアントを使用して RDS インスタンスに接続する場合は、RDS インスタンスの IP アドレスホワイトリストを設定し、ビジネス要件に基づいて RDS インスタンスのエンドポイントを取得する必要があります。
SSMS 19.0 クライアントを起動します。
[接続] > [データベースエンジン] を選択します。
[サーバーに接続] ダイアログボックスで、ログインに必要なパラメーターを設定します。
パラメーター
値の例
説明
[サーバー名]
rm-2ze****.rds.aliyuncs.com,1433
RDS インスタンスのエンドポイントとポート番号。パブリックエンドポイントを申請したときに取得した [パブリックエンドポイント] と [パブリックポート番号] を入力します。エンドポイントとポート番号はコンマ (,) で区切ります。
[認証]
SQL Server 認証
SQL Server の認証モード。
[ユーザー名]
testuser
RDS インスタンスのアカウントのユーザー名。
[パスワード]
Test_pw123
RDS インスタンスのアカウントのパスワード。
[接続] をクリックします。
接続が成功すると、接続情報が SSMS の左側に表示されます。
方法 3: Java アプリケーションを使用して RDS インスタンスに接続する
このセクションでは、Java Database Connectivity (JDBC) を使用して Java アプリケーションを RDS インスタンスに接続する方法について説明します。
接続する前に、アプリケーションが実行されている環境の IP アドレスを RDS インスタンスの IP アドレスホワイトリストに追加する必要があります。たとえば、ECS インスタンスまたはオンプレミスデバイスの IP アドレスを追加できます。詳細については、「IP ホワイトリストの設定」をご参照ください。
JDBC ドライバーを Maven プロジェクトに追加して、RDS インスタンスに接続します。
サンプルコードをコンパイルして、Java を使用して RDS インスタンスに接続します。
実際のエンドポイント、データベース名、ユーザー名、パスワード、および SQL 文を使用する必要があります。詳細については、「エンドポイントとポート番号の表示と変更」をご参照ください。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; import java.sql.ResultSet; public class testMSSQLJDBC { public static void main(String[] args) { // RDS インスタンスのエンドポイントを入力します。アプリケーションが ECS インスタンスにデプロイされている場合は、内部エンドポイントを入力します。アプリケーションがオンプレミスデバイスまたは他の環境にデプロイされている場合は、パブリックエンドポイントを入力します。 String url = "jdbc:sqlserver://rm-2vc367d081200******.mssql.cn-chengdu.rds.aliyuncs.com:1433;" + "database=YourDatabaseName;" + "encrypt=true;" + "trustServerCertificate=true;" + "loginTimeout=30;"; // ユーザー名とパスワードを入力します。Windows 認証を使用しない場合は、ユーザー名とパスワードを指定する必要があります。 String username = "usernametest"; String password = "Passwordtest!"; // 接続オブジェクトを作成します。 Connection connection = null; try { // JDBC ドライバーをロードします。 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); // RDS インスタンスへの接続を確立します。 connection = DriverManager.getConnection(url, username, password); System.out.println("Connection succeeded!"); // SQL 文を実行するための Statement オブジェクトを作成します。 Statement statement = connection.createStatement(); // SQL クエリを実行します。実際のテーブル名と列名を使用する必要があります。 String sql = "SELECT TOP 10 * FROM YourTableName"; ResultSet resultSet = statement.executeQuery(sql); // 結果セットを処理します。 while (resultSet.next()) { System.out.println("Column 1: " + resultSet.getString("YourColumnName1")); System.out.println("Column 2: " + resultSet.getString("YourColumnName2")); } // 結果セットを閉じます。 resultSet.close(); // Statement オブジェクトを閉じます。 statement.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { // 接続を閉じます。 if (connection != null) { try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } } }接続が成功したかどうかをテストします。
変更したコードを
SqlServerConnection.javaファイルに保存します。次に、コマンドラインまたは統合開発環境 (IDE) でアプリケーションをコンパイルして実行します。設定が正しければ、次の結果が生成され、アプリケーションが RDS インスタンスに接続されます。






