PAM360データベースのローカルMS SQLからのAmazon RDS MS SQLデータベースへの移行

PAM360は、PostgreSQLをデフォルトバックエンドデータベースとして使い、本製品とバンドルされています。ただし、Amazon RDSを使うことで、オンプレミスデータベースをオンデマンドサービスに移行することができます。これを活用すると、すべてのデータをローカルMS SQLデータベースからAmazon RDS MS SQLデータベースへの移行が簡単にできます。

Amazon Web Services (AWS) Relational Database Service (RDS) は、クラウド上でリレーショナルデータベースを簡単にセットアップ、運用、拡張できるマネージドサービスです。Amazon Aurora、PostgreSQL、MySQL、MariaDB、Oracle Database、Microsoft SQL Serverなど、複数のデータベースエンジンをサポートしています。

Amazon RDSインスタンスを使用するメリット

  • 自動バックアップ、パッチ適用、スケーリングなど、データベース管理タスクを簡素化します。
  • 最小限のダウンタイムと自動フェールオーバーを確保するとともに、需要に合わせてコンピューティングおよびストレージリソースを動的に拡張できるようにします。
  • 最適化されたストレージオプションとリードレプリカにより、パフォーマンスが向上します。
  • 自動バックアップ、スナップショット、および複数リージョン展開により、データの耐久性と可用性が確保されます。

本書では、ローカルMS SQLデータベースからAmazon RDS MS SQLデータベースにデータをPAM360で移行するプロセスについて詳細に説明します。

PAM360データベースのMS SQLからのAmazon RDS MS SQLへの移行

ローカルMS SQLからAmazon RDS MS SQLへデータを移行する大まかな手順は以下のとおりです。必要な管理者/スーパーユーザー権限を使って、それぞれの環境で実行してください。

  1. S3 bucketを作成して、ローカルSQLバックアップ(.bak)ファイルを保存します。
  2. [RDS] >> [オプショングループ] >> [オプションを追加]の順に移動し、[RDSオプション]SQLSERVER_BACKUP_RESTOREの名前で作成します。
  3. IAMロールフィールドはデフォルトのままにします。
  4. RDSインスタンスを修正し、[データベースオプション] >> [オプショングループ]を新しく作成したSQLSERVER_BACKUP_RESTOREに変更します。
  5. [変更をすぐに適用]をクリックし、DBの変更内容を保存します。
  6. RDS SQLインスタンスをEC2 Windowsインスタンスから接続し、以下のrds_restore_database保存の手順を実行しDBを復元します:
    exec msdb.dbo.rds_restore_database
    @restore_db_name='database_name',
    @s3_arn_to_restore_from='arn:aws:s3:::bucket_name/file_name.extension';
  7. 復元が正常に完了したら、以下のクエリを実行します:
    use write_the_name_of the restored_database;
    OPEN MASTER KEY DECRYPTION BY PASSWORD='type_the_master_key_password';
  8. <PAM360 Installation Directory>\conf ディレクトリにある以下のファイルのコピーを作成し、次のように名前を変更してください:
    • wrapper.confからwrapper.conf_old
    • wrapper_lin.confからwrapper_lin.conf_old
    • wrapper_lin.confからwrapper_lin.conf_old
    • wrapper_lin.conf_mssqlからwrapper_lin.conf
    • pam360_key.key から pam360_key.key_old
    • database_params.confからdatabase_params.conf_old
    • customer-config.xmlからcustomer-config.xml_old
    • customer-config.xml_mssqlからcustomer-config.xml
  9. masterkey.keypam360_key.keyファイルをローカルインスタンスからEC2インスタンスに置き換えます。
  10. <PAM360 Installation Directory>\confディレクトリにある下のファイルをダウンロードして置き換えます。
    • customer-config.xml
    • database_params.conf
    • masterkey.key
  11. <PAM360 Installation Directory>\conf フォルダから、テキストエディタで database_params.conf ファイルを開き、以下の操作を行ってください:
    • <%DNS_NAME%>をMS SQLインスタンス名と置き換えます。
    • <database name>を暗号化されたデータベース名に置き換えます。
    • ユーザー名パスワードをRDS MS SQLインスタンス詳細で更新します。
    • db.password.encrypted=true を検索して、 db.password.encrypted=false.として変更します。
    • それでは、database_params.conf ファイルを保存して閉じます。
  12. RDS MS SQL RDSリージョンのルートCA証明書をダウンロードします。
  13. コマンドプロンプトを使って<PAM360 Installation Directory>\jre\binフォルダに移動し、以下のコマンドを実行して.pemファイルをPAM360にインポートします:
    'keytool.exe -import -v -alias <alias name> -file <certificate path> -keystore  ..\lib\security\cacerts -keypass changeit -storepass changeit -noprompt'
  14. PAM360サービスを開始します。

これで、データがローカルMS SQLデータベースからAmazon RDS MS SQLデータベースに正常に移行されました。