Share via


SQL Server への接続 (SybaseToSQL)

Sybase Adaptive Server Enterprise (ASE) データベースを SQL Server に移行するには、SQL Server のターゲット インスタンスに接続する必要があります。 接続すると、SSMA は SQL Server のインスタンス内のすべてのデータベースに関するメタデータを取得し、SQL Server メタデータ エクスプローラー にデータベース メタデータを表示します。 SSMA には、接続先の SQL Server のインスタンスに関する情報が格納されますが、パスワードは格納されません。

SQL Server への接続は、プロジェクトを閉じるまでアクティブなままです。 プロジェクトを再度開くときに、サーバーへのアクティブな接続が必要な場合は、SQL Server に再接続する必要があります。 データベース オブジェクトを SQL Server に読み込んでデータを移行するまで、オフラインで作業できます。

SQL Server のインスタンスに関するメタデータは自動的には同期されません。 そうではなく、SQL Server メタデータエクスプローラー でメタデータを更新する場合は、このトピックで後述する SQL Server メタデータの同期 セクションの説明に従って、SQL Server メタデータを手動で更新する必要があります。

必要な SQL Server アクセス許可

SQL Server への接続に使用されるアカウントには、アカウントが実行する操作に応じて異なるアクセス許可が必要です。

  • ASEz オブジェクトを Transact-SQL 構文に変換したり、SQL Server からメタデータを更新したり、変換された構文をスクリプトに保存したりするには、アカウントに SQL Server のインスタンスにログオンするアクセス許可が必要です。

  • SQL Server にデータベース オブジェクトを読み込むには、アカウントが db_ddladmin データベース ロールのメンバーである必要があります。

  • SQL Server にデータを移行するには、アカウントは次を満たす必要があります。

    • クライアント側のデータ移行エンジンを使用している場合は、db_owner データベース ロールのメンバー。
    • サーバー側のデータ移行エンジンを使用している場合は、sysadmin サーバー ロールのメンバー。 これは、SSMA 一括コピー ツールを実行するためのデータ移行中に CmdExec SQL Server エージェント ジョブ ステップを作成するために必要です。

      注意

      SQL Server エージェント プロキシ アカウントは、サーバー側データ移行でサポートされていません。

  • SSMA によって生成されたコードを実行するには、ターゲット データベースの ssma_syb スキーマ内のすべてのユーザー定義関数に対する EXECUTE アクセス許可がアカウントに必要です。 これらの関数は、ASE システム関数と同等の機能を提供し、変換されたオブジェクトによって使用されます。

SQL Server 接続の確立

ASE データベース オブジェクトを SQL Server 構文に変換する前に、ASE データベース (複数可) を移行する SQL Server のインスタンスへの接続を確立する必要があります。

接続プロパティを定義するときは、オブジェクトとデータを移行するデータベースも指定します。 このマッピングは、SQL Server に接続した後、ASE スキーマ レベルでカスタマイズできます。 詳細については、「Sybase ASE スキーマの SQL Server スキーマへのマッピング (SybaseToSQL)」を参照してください。

重要

SQL Server に接続を試みる前に、SQL Server のインスタンスが実行されており、接続を承諾できることを確認してください。

SQL Server へ接続するには :

  1. [ファイル] メニューの [SQL Server に接続] を選択します。 以前に SQL Server に接続した場合、コマンド名は [SQL Server に再接続] になります。

  2. 接続のダイアログ ボックスに、SQL Server のインスタンスの名前を入力または選択します。

    • ローカル コンピューター上の既定のインスタンスに接続する場合は、localhost またはドット (.) を入力できます。
    • 別のコンピューター上の既定のインスタンスに接続する場合は、コンピューターの名前を入力します。
    • 別のコンピューター上で名前付きインスタンスに接続する場合は、コンピューター名の後にバックスラッシュ、その後に MyServer\MyInstance などのインスタンスの名前を入力します。
  3. SQL Server のインスタンスが既定以外のポートで接続を承諾するように構成されている場合は、[サーバー ポート] ボックスに SQL Server 接続に使用されるポート番号を入力します。 SQL Server の既定のインスタンスでは、この規程のポート番号は 1433 です。 名前付きインスタンスの場合、SSMA は SQL Server Browser サービスからポート番号の取得するようにします。

  4. データベース ボックスに、ターゲット データベースの名前を入力します。 このオプションは、SQL Server に再接続するときに使用できません。

  5. [認証] ボックスで、接続に使用する認証の種類を選択します。 現在の Windows アカウントを使用するには、[Windows 認証] を選択します。 SQL Server ログインを使用するには、[SQL Server 認証] を選択し、ログイン名とパスワードを指定します。

  6. セキュリティ保護接続の場合、[接続の暗号化] チェック ボックスと [TrustServerCertificate] チェック ボックスの 2 つのコントロールが追加されます。 [接続の暗号化] がオンになっている場合にのみ、[TrustServerCertificate] チェック ボックスが表示されます。 [接続の暗号化] がオン (true) で、[TrustServerCertificate] がオフ (false) の場合、SQL Server SSL 証明書の妥当性確認が行われます。 サーバー証明書の検証は、SSL ハンドシェイクの一部であり、接続先のサーバーが適切なサーバーであることを保証します。 これを確実に行うには、クライアント側とサーバー側に認定資格証をインストールする必要があります。

  7. [接続] をクリックします。

重要

より高いバージョンのSQL Serverに接続できますが、移行プロジェクトの作成時に選択したバージョンと比較すると、データベース オブジェクトの変換は、接続先のSQL Serverのバージョンではなく、プロジェクトのターゲット バージョンによって決まります。

SQL Server への再接続

SQL Server への接続は、プロジェクトを閉じるまでアクティブなままです。 プロジェクトを再度開くときに、サーバーへのアクティブな接続が必要な場合は、SQL Server に再接続する必要があります。 メタデータの更新や、データベース オブジェクトの SQL Serverへの読み込み、データの移行を行うまでは、オフラインで作業できます。

SQL Server に再接続する処置は、接続を確立する処置と同じです。

SQL Server メタデータの同期

SQL Server データベースに関するメタデータは自動更新されません。 SQL Server メタデータ エクスプローラー のメタデータは、最初に SQL Server に接続したとき、またはメタデータを最後に手動で更新したときのメタデータのスナップショットです。 すべてのデータベースのメタデータ、または任意の単一データベースまたはデータベース オブジェクトのメタデータを手動で更新できます。 メタデータを同期するには :

  1. SQL Server に接続していることを確認します。

  2. SQL Server メタデータ エクスプローラー で、更新するデータベースまたはデータベース スキーマの横にあるチェック ボックスを選択します。 たとえば、すべてのデータベースのメタデータを更新するには、[データベース] の横にあるボックスを選択します。

  3. [データベース]、または個々のデータベースまたはデータベース スキーマを右クリックし、[データベースと同期] を選択します。

次の手順

移行の次の手順は、プロジェクトのニーズによって異なります。

参照

SQL Server - Azure SQL Database への Sybase ASE データベースの移行 (SybaseToSQL)