SSIS で SQL Server から MySQL へのデータフローを構築

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
CData SSIS Tasks for MySQL を使用して、SQL Server データを MySQL に簡単にプッシュできます。

SQL Server データベースは、エンタープライズレコードの保存に広く使用されています。このデータを他の場所に移動する必要がある場合がよくあります。CData SSIS Task for MySQL を使用すると、MySQL のデータを簡単に転送できます。この記事では、SQL Server から MySQL にデータをエクスポートする方法を説明します。

ソースとデスティネーションコンポーネントの追加

まず、新しい ADO.NET Source コントロールと新しい MySQL Destination コントロールを Data Flow Task に追加します。

ADO.NET ソースの設定

以下の手順に従って、SQL Server インスタンスへの接続に必要なプロパティを指定します。

  1. ADO.NET Source を開き、新しい接続を追加します。ここでサーバーとデータベースの情報を入力します。
  2. Data access mode メニューで「Table or view」を選択し、MySQL にエクスポートするテーブルまたはビューを選択します。
  3. ADO NET Source ウィザードを閉じ、デスティネーションコンポーネントに接続します。

MySQL 用の新しい Connection Manager を作成

以下の手順に従って、Connection Manager で必要な接続プロパティを設定します。

  1. 新しい Connection Manager を作成します:Connection Manager ウィンドウで右クリックし、New Connection をクリックします。Add SSIS Connection Manager ダイアログが表示されます。
  2. メニューから CData MySQL Connection Manager を選択します。
  3. 接続プロパティを設定します。

    Server およびPort プロパティがMySQL への接続には必須です。IntegratedSecurity をFALSE に設定した場合、User、Password も必須になります。 オプションで、Database を設定することもできます。Database は設定がない場合すべてのデータベースを使えるようになります。

    パスワード方式によるSSH 接続

    パスワード方式によるSSH接続時に必要なプロパティ一覧を以下に示します。

    • User: MySQL のユーザ
    • Password: MySQL のパスワード
    • Database: MySQL の接続先データベース
    • Server: MySQL のサーバー
    • Port: MySQL のポート
    • UserSSH: "true"
    • SSHAuthMode: "Password"
    • SSHPort: SSH のポート
    • SSHServer: SSH サーバー
    • SSHUser: SSH ユーザー
    • SSHPassword: SSH パスワード

    接続文字列形式では以下のようになります。

    User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Password;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHPassword=sshpasswd;

    公開鍵認証方式方式によるSSH 接続

    公開鍵認証によるSSH接続時に必要なプロパティ一覧を以下に示します。

    • User: MySQL のユーザ
    • Password: MySQL のパスワード
    • Database: MySQL の接続先データベース
    • Server: MySQL のサーバー
    • Port: MySQL のポート
    • UserSSH: "true"
    • SSHAuthMode: "Public_Key"
    • SSHClientCertType: キーストアの種類
    • SSHPort: SSH のポート
    • SSHServer: SSH サーバー
    • SSHUser: SSH ユーザー
    • SSHClientCert: 秘密鍵ファイルのパス

    接続文字列形式では以下のようになります。

    User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Public_Key;SSHClientCertType=PUBLIC_KEY_FILE;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHClientCert=C:\Keys\key.pem;

MySQL デスティネーションの設定

デスティネーションコンポーネントの Connection Manager で、SQL Server ソーステーブルから MySQL デスティネーションテーブルへのマッピングと、MySQL のデータに対して実行するアクションを定義します。この記事では、Orders エンティティを MySQL に挿入します。

  1. MySQL Destination をダブルクリックして、デスティネーションコンポーネントエディタを開きます。
  2. Connection Managers タブで、先ほど作成した Connection Manager を選択します。
  3. Use a Table メニューで Orders を選択します。 Action メニューで Insert を選択します。
  4. Column Mappings タブで、入力カラムからデスティネーションカラムへのマッピングを設定します。

プロジェクトの実行

これでプロジェクトを実行できます。 SSIS Task の実行が完了すると、SQL テーブルのデータが選択したテーブルにエクスポートされます。

はじめる準備はできましたか?

MySQL SSIS Component の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

MySQL Icon MySQL SSIS Components お問い合わせ

SSIS ソース元 & 接続先コンポーネントは、SQL Server SSIS のワークフロー内で簡単にMySQL 互換データベースエンジンに接続できるパワフルなツールです。

データフロー内のMySQL コンポーネントを使ってMySQL を同期できます。データ同期、ローカルバックアップ、ワークフローの自動化などに最適!