PostgreSQLデータベースからMS SQL Serverへの移行
M365 Manager PlusにはPostgreSQLデータベースがバンドルされており、レポート、監視、管理、および監査モジュールからの製品のデータを保存します。このソリューションはMS SQL Serverもサポートしており、製品データを組み込みのPostgreSQLからMS SQLデータベースに移行できます。このガイドでは、データベースの移行プロセスについて説明します。
サポートされているバージョンのMS SQL Server:2014、2016、および2017
※本ページに掲載されているバージョンでも、Microsoft社のサポートが終了した場合はサポート対象外となります。
移行プロセスの前提条件
データの移行先のMS SQL Serverで次の条件が満たされていることを確認してください。
- SQL Serverブラウザが稼働している必要があります。
- SQL Serverネットワーク構成の場合、TCP/IPプロトコルを有効にする必要があります。
- すべてのクライアントプロトコルを有効にする必要があります。
- MS SQL Serverへのアクセスが、サーバーレベルでは"sysadmin"、データベースレベルでは"db_owner"権限を持つユーザーに委任されていること。
前提条件1、2、および3の構成については、付録Aを参照してください。前提条件4の構成については、付録Bを参照してください。
PostgreSQLからMS SQLへの移行
M365 Manager PlusのデフォルトのPostgreSQLデータベースからMS SQLへのデータの移行は、次の2つの手順で構成されます。
ステップ1:M365 Manager Plusのデータベースのバックアップ
新規インストールのデータベースを移行する場合は、この手順をスキップできます。
- M365 Manager Plusを停止します。(バックアップを実行する前に、M365 Manager Plusを停止することが不可欠です)。
- M365 Manager Plusがコンソールモードで実行されている場合は、Windowsアイコンをクリックします。M365 Manager Plusを検索し、[M365 Manager Plusの停止]を選択します。
- M365 Manager Plusがサービスとして実行されている場合は、Windowsアイコンをクリックします。サービスを検索します。表示されるウィンドウで、[ManageEngine M365 Manager Plus]を選択し、左側にある[サービスの停止]オプションを選択します。
- 「<M365 Manager Plus installation directory>\bin」に移動します。
- 管理者としてbackupDB (Windowsバッチ)ファイルを実行します。プロセスが終了するまで終了しないでください。
- M365 Manager Plusの既定のデータベースのデータは、次の場所にバックアップおよび保存されます:<M365 Manager Plus installation directory>\backup\OineBackup _<Backup Time>。
ステップ2:PostgreSQLデータのMS SQLへの移行
- MS SQL Serverがリモートコンピューターにインストールされている場合は、必要なコマンドラインユーティリティとネイティブクライアントをインストールしてから、次の手順に進みます。
- 次のファイルを「<M365 Manager Plus installation directory>\bin folder」フォルダーにコピーします。
- bcp.exe - <MS SQL installation directory>\Tools\Binn\bcp.exe
- bcp.rll - <MS SQL installation directory>\Tools\Binn\Resources\1033\bcp.rll
- 「<M365 Manager Plus directory>\bin」に移動します。
- 管理者としてChangeDBバッチファイルを実行します。表示されるデータベースセットアップウィザードで、サーバーの種類として[MS SQL Server]を選択します。
- MS SQL Serverのホスト名とポート番号を入力します。
- ドロップダウンからSQL Serverインスタンスを選択します。
- 認証種類を選択します。
- Windows認証を選択する場合は、サーバーにアクセスできるユーザーアカウントのドメイン名、ユーザー名、およびパスワードを入力します。
- SQL Server認証を選択する場合は、MS SQL Serverインスタンスにアクセスできるユーザーのユーザー名とパスワードを入力します。
- デフォルトのデータベースに保存されているすべてのデータを移行し、そのコピーを新しく移行したデータベースに保持する場合は、[既存のデータを移行する]の横にあるチェックボックスをオンにします。データを移行したくない場合は、チェックを外したままにしておくことができます。
- [接続をテスト]をクリックします。テストが失敗した場合は、資格情報を再確認して、再試行してください。
- [保存]をクリックして、MS SQL Serverの構成を終了します。
- M365 Manager Plus Server/Serviceを起動して、データベースとしてMS SQL Serverを使用します。
SQL Serverのバージョン | コマンドラインユーティリティ | ネイティブクライアント |
2008 R2 | ダウンロード | ダウンロード |
2012 | ダウンロード | ダウンロード |
2014 | ダウンロード | ダウンロード |
2016 | ダウンロード | 必要なし |
2017 | ダウンロード | 必要なし |
付録A
MS SQLサーバーの設定
以下の手順に従って、新しいMS SQL Serverのインストールを構成します。すでに機能しているMS SQL Serverがある場合、この手順は必要ありません。
- コマンドプロンプトでcompmgmt.mscを実行して、SQL Server構成マネージャーを開きます。
- SQL Serverサービスに移動し、SQL Serverブラウザーが実行されていることを確認します。
- 。左側のウィンドウで、[SQL Serverネットワーク構成]をクリックし、[SQLEXPRESSのプロトコル]をダブルクリックします。
- 表示されるポップアップで、[プロトコル]タブに移動し、TCP/IPを有効にします。SQL Server SQL EXPRESSサービスを再起動します。
- SQL Server構成マネージャーに戻ります。左側のペイン:
- [SQL Serverネットワーク構成] >[SQLEXPRESSのプロトコル]に移動し、すべてのプロトコルを有効にします。
- [SQLネイティブクライアント設定] >[クライアントプロトコル]に移動し、すべてのプロトコルを有効にします。
付録B
MS SQL Serverアクセスをユーザーに委任する
移行プロセスを完了するには、MS SQL接続用のデータベース管理者アカウントが必要です。M365 Manager PlusがすでにWindowsサービスとして実行されている場合は、そのサービスアカウントをMS SQLデータベース管理者アカウントとして使用できます。アカウントに必要な権限があるかどうかを確認してください。MS SQL Serverに既に構成されたサービスアカウントがない場合は、以下の手順に従って新しいユーザーアカウントを作成し、それに必要なアクセス許可を割り当てます。
- SQL Server Management Studioにログインします。
- 左側のペインで、[マシン名] >[SQLEXPRESS] >[セキュリティ] >[ログイン]に移動します。
- [ログイン]を右クリックして、[新しいログイン]を選択します。
- ログイン名を入力し、Windows認証とSQL Server認証のどちらを使用するかを選択します。
- [Windows認証]を選択した場合は、アクセスを許可する必要があるユーザーのWindows NT名を入力します。
- SQL Server認証を選択した場合は、新しいユーザー名とパスワードを作成するように求められます。
- 新しいユーザーは、サーバーレベルでsysadminロール、データベースレベルでdb_ownerロールを持っている必要があります。次の手順に従って、sysadminおよびdb_ownerロールの権限を新しいユーザーに提供します。
- [マシン名] >[SQLEXPRESS] >[セキュリティ] >[ログイン]に移動します。[ユーザー] >[プロパティ]を右クリックします。
- [サーバーの役割]に移動し、[sysadmin]ボックスを選択して、[OK]をクリックします。
- 左側のペインの[ユーザーマッピング]に移動します。このログインリストにマップされているユーザーで、データベースを確認し、データベースロールメンバーシップのリストでdb_ownerを選択して、[OK]をクリックします。
- サーバーレベルのロールの場合:http://msdn.microsoft.com/en-us/library/ms188659.aspx
- データベースレベルのロールの場合:http://msdn.microsoft.com/en-us/library/ms189121.aspx
一般に、構成されたアカウントには、移行プロセスを正常に完了するために、次の3つの権限セットのいずれかが必要です。
必要なデータベースのロール | 必要なアクセス許可 | |
セット1 | db_owner | 必要ありません |
セット2 | db_datareader、 db_datawriter、 db_ddladmin、 db_backupoperator。 |
必要ありません |
セット3 | db_ddladmin | ALTER ANY TABLE, ALTER ANY AGGREGATE, ALTER ANY DEFAULT, ALTER ANY FUNCTION, ALTER ANY PROCEDURE, ALTER ANY QUEUE, ALTER ANY RULE, ALTER ANY SYNONYM, ALTER ANY TYPE, ALTER ANY VIEW, ALTER ANY XML SCHEMA COLLECTION, ALTER ANY REFERENCES, CONTROL ON CERTIFICATE::[ZOHO_CERT] TO[ユーザー], CONTROL ON SYMMETRIC KEY::[##MS_DatabaseMasterKey##] TO[ユーザー], CONTROL ON SYMMETRIC KEY::[ZOHO_SYMM_KEY] TO[ユーザー] |
重要:
PostgreSQLをMS SQLに初めて移行するときは、db_owner権限が必要であることに注意してください。移行が成功したら、アカウントのdb_owner権限を取り消して、セット2またはセット3の権限を提供できます。