EDB Postgres™Enterprise Manager
アップグレードおよび移行ガイド
バージョン7.5
 
 
 
2018年10月22日
 
1 はじめに
このドキュメントでは、Postgres Enterprise Manager™(PEM)サーバーのアップグレードに関する詳細情報を提供しています。
PEMインストールのアップグレード - 第2章では、PEMサーバーを1つのメジャーバージョンから別のメジャーバージョン(6.0から7.5)にアップグレードする方法について説明します。
バッキングデータベースのアップグレード - セクション3では、PEMサーバーの同じバージョンを維持しながら、バッキングデータベースのアップグレードに関する詳細情報を提供します。
PEMサーバーの移動 -セクション4では、あるホストから別のホストにPEMサーバーを移動する方法について詳しく説明します。
将来のPEMリリースでは、グラフィカルインストーラはLinuxホスト上のPEMエージェントまたはサーバーでは使用できないことに注意してください。 RPMパッケージを使用してPEMインストールをインストールまたはアップデートする必要があります。 RPMパッケージを使用してグラフィカルインストーラとともにインストールされたPEMサーバーまたはエージェントのLinuxホストを更新する方法の詳細については、第 5 章を参照してください
このドキュメントでは、 Postgres という用語を PostgreSQLデータベースまたはAdvanced Serverデータベースのいずれかとして使用しています。
1.1 このガイドで使用される表記規則
このマニュアルでは、さまざまなコマンド、文、プログラム、例などの意味と使用法を明確にするために、特定の表記規則が使用されています。このセクションでは、これらの規則の概要を説明します。
以下の説明では、 用語は、言語キーワード、ユーザ提供値、リテラルなどの任意の単語または単語群を指す。用語の正確な意味は、それが使用される文脈に依存する。
イタリック体のフォントで は、通常、最初に定義された文章に新しい用語が導入されています。
Fixed-width (mono-spaced) font は、 SQL コマンド、例で使用されている特定のテーブルとカラム名、プログラミング言語キーワード など、文字通り与えなければならない用語に使用され ます 。たとえば、 SELECT * FROM emp;
イタリック固定幅フォント は、ユーザーが実際の使用で値を置き換える必要がある用語に使用されます。たとえば、 DELETE FROM table_name ;
角括弧[]は、囲まれた用語の1つまたはいずれかが置換されている可能性があることを示します。たとえば、 [ a | b ] 、「 a 」または「 b 」のいずれかを選択するか、またはどちらも選択しないことを意味します。
中括弧{}は、囲まれた選択肢のうちの1つを指定する必要があることを示します。たとえば、 { a | b } 、 " a "または " b "のうちの1つを指定する必要があることを意味します。
楕円形...とは、進行中の用語を繰り返すことができることを意味します。たとえば、 [ a | b ] ...は、あなたがシーケンス「 baaba 」を持っているかもしれないことを意味します。
2 PEMインストールのアップグレード
PEMグラフィカルインストーラを使用して、グラフィカルインストーラでインストールされたPEMエージェントまたはサーバを最新バージョンにアップデートすることができます。 PEMおよびSQLプロファイラインストーラへのリンクは、次のEnterpriseDB Webサイトで入手できます。
http://www.enterprisedb.com/products-services-training/products/postgres-enterprise-manager
Postgres Enterprise Manager™コンポーネントのアップグレード
PEMコンポーネントソフトウェアをアップグレードするには、新しいバージョンのPEMコンポーネントインストーラを次の順序で呼び出すだけです。
1。
PEMサーバーノードを除く 各監視対象ノードで、PEMエージェントインストーラーを呼び出します。アップグレードが実行されている間は、アップグレードされたPEM 7.5エージェントはPEM 6サーバーで動作することに注意してください。
2。
PEMサーバーインストーラを起動します。このインストーラは 、PEMサーバーと、PEMサーバーノードにあるPEMエージェントの両方 をアップグレードします。
インストール中、コンポーネントインストーラは自動的に既存のインストールを検出し、アップグレードを実行します。 PEMコンポーネントをアップグレードしたら、SQLプロファイラをアップグレードする必要があります。このステップはプラットフォーム固有です。
PEM 7以降、PEMクライアントインターフェイスはPEMサーバーコンポーネントの一部としてインストールされ、任意のWebブラウザでアクセスされます。 PEM 7 Webインターフェイスの使用方法の詳細については、 PEM Getting Started Guide を参照してください
RPMパッケージを使用してサーバーまたはエージェントをインストールした場合は、RPMパッケージを使用してインストールをアップグレードする必要があります。同様に、グラフィカルインストーラで最初にインストールした場合は、グラフィカルインストーラでアップグレードする必要があります。
以下のセクションでは、アップグレードプロセスを順を追って説明します。
2.1 PEMエージェントのアップグレード
PEMエージェントによって現在監視されているシステムを最新バージョンのPEMエージェントにアップグレードするには、エージェントが監視しているシステム上で、プラットフォーム固有のPEMエージェントインストーラの新しいバージョンをダウンロードして呼び出します。
Linuxユーザーの場合は、スーパーユーザー権限を前提として、ターミナルウィンドウを開き、インストーラが存在するディレクトリに移動して次のように入力して、インストーラを呼び出すことができます。
./pem_agent- xxx -linux.run
どこ xxx 、インストーラのバージョン情報を指定します。
Windowsユーザの場合は、ダウンロードしたインストーラのアイコンを右クリックし、[ Administrator as Run ]を選択してインストーラを呼び出すことができます
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥4ddc8f39¥one.png
図2.1 - PEMエージェントインストーラのウェルカムウィンドウ
PEM Agent Setup Wizardあなたを歓迎し、開きます(図2.1を参照)。

C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥16126cee¥patwo.png
図2.2 - PEMライセンス契約。
[ Nextへ]をクリックして続行する前に License Agreement (図2.2に示す) を読み、同意します。

C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥14106ae0¥pathree.png
図2.3 - インストーラは既存のインストールを検出します。
セットアップウィザードは自動的に既存のエージェントを検出し、インストールされているバージョンをアップグレードします(図2.3参照)。 [ Nextクリックして続行します。

インストールを続行するには、サービスアカウントのパスワードを入力する必要があります。プロンプトが表示されたら、パスワードを入力して
Nextクリックして続行します
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥4966c6d5¥pafour.png
図2.4 - PEMエージェントはアップグレードを実行します。
ときに Ready to Install (図2.4に示されている)ダイアログは、インストールが開始されようとしていることを通知、クリックしNext継続します。

C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥04185ab8¥pafive.png
図2.5 - プログレスバーは、インストールプロセスを示しています。
セットアップウィザードには、インストール中の各コンポーネントを知らせるプログレスバーが表示されます(図2.5参照)。

C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥949cec36¥two.png
図2.6 - PEMエージェントセットアップウィザードがアップデートを完了しました。
PEM Agent Setup Wizard 、インストールが完了したときにお知らせします(図2.6を参照)。 [ Finishをクリックしてウィザードを終了し、ウィンドウを閉じます。
 
2.1.1 RPMパッケージを使用したPEMエージェントのアップグレード
RPMパッケージを使用して、パッケージによって最初にインストールされた既存のエージェントをアップグレードすることができます。アップグレードプロセスは、PEMエージェント構成ファイルを更新しません。新しいエージェントをインストールしたら、既存のエージェントの設定ファイルを新しいインストール場所に手動でコピーする必要があります。
RPMパッケージを使用してPEMエージェントをアップグレードするには、次の作業を行う必要があります。
1。
yum upgrade pem-agent
2。
cp /usr/pem-6.0/etc/agent.cfg /usr/pem/agent/etc/agent.cfg
RPMパッケージを使用してPEMエージェントをインストールする方法の詳細については、 PEMインストールガイドまたはAdvanced Server Installation Guide を参照してください
http://www.enterprisedb.com/products-services-training/products/documentation/enterpriseedition
2.2 PEMサーバーのアップグレード
PEMサーバインストーラは、PEMサーバのメジャーバージョン間で直接アップグレードすることを容易にします(たとえば、バージョン6.0にアップグレードすることなく、バージョン5.0からバージョン7.5に直接アップグレードできます)。サーバーのインストール中に、セットアップウィザードは依存関係のチェックも実行して、Apache / PHPのバージョンが新しいPEMサーバーのバージョンに必要なバージョンにアップグレードされていることを確認します。
Linuxユーザの場合、ダウンロードしたPEMサーバインストーラを起動するには、スーパーユーザ権限を前提として、インストーラが存在するディレクトリに移動して次のように入力します。
./pem_server- xxx -linux.run
どこ xxx 、インストーラのバージョン情報を指定します。
Windowsユーザの場合は、ダウンロードしたインストーラのアイコンを右クリックし、[ Administrator as Run ]を選択してインストーラを呼び出すことができます
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥05175ec4¥one.png
図2.7 - PEMサーバーセットアップウィザード
PEM Server Setup Wizard図2.7に示すように、あなたを歓迎します。 [ Nextをクリックして、 License Agreementに進みます。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥8a3f83f5¥pstwo.png
図2.8 - 使用許諾契約書に同意して続行してください。
PEMサーバセットアップウィザードでは、 License Agreement に同意するように求められます (図2.8参照)。使用許諾契約書を確認した後、次のラジオボタンをチェックしI accept the agreementし、クリックしNextし続けるためにExisting installationダイアログ。

C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥d5412951¥psthree.png
図2.9 - PEMサーバーインストーラは、既存のPEMサーバーインストールを検出します。
ウィザードはPEMサーバーホストに既存のPEMサーバーインストールをチェックします。ウィザードがインストールを検出すると、アップグレードが実行されます(図2.9を参照)。 [ Nextクリックして続行します。

C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥d7cb600a¥one.png
図2.10 - インストールには依存関係のアップグレードが必要です。
PEMサーバーをアップグレードする前に、ウィザードは新しいPEMサーバーの要件が存在することを確認します。サポートされているコンポーネントがない場合、または新しいPEMインストールをサポートしないバージョンの場合、PEMインストールウィザードは依存関係をアップグレードする必要があることを通知し、必要なインストーラを起動します(図2.10を参照)。
インストールウィザードが依存関係のアップグレードを完了すると、フォーカスはPEMサーバーセットアップウィザードに戻ります。

C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥8a3e8356¥psfive.png
図2.11 - バッキングデータベースの接続情報を提供する
次に、 [ Database Server Installation Details ]ダイアログボックスが開き、 PEMバッキングデータベースのデータベーススーパーユーザの接続資格情報を入力するよう求められます(図2.11を参照)。提供:
[ Nextクリックして続行します。
pemAgentサービスアカウントのダイアログで、PEMエージェントサービスが実行されているアカウントのパスワードを入力するよう求められます。プロンプトが表示されたら、パスワードを入力して Nextクリックして続行します。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥883e85ff¥pssix.png
図2.12 - PEMセットアップウィザードがPEMサーバーをインストールする準備ができました。
Ready to Installダイアログは、セットアップウィザードは、インストールを実行する準備ができていることを通知します。 [ Nextをクリックしてインストールを開始します(図2.12を参照)。

C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥883c85d9¥psseven.png
図2.13 - 進行中のPEMサーバーのインストール
インストール中、プログレスバーはアップデートの進行状況を通知します(図2.13を参照)。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥c548198b¥pseight.png
図2.14 - セットアップウィザードがPEM Webサービスを設定します。
PEMサーバ(およびPEMサーバと同じホストにあるエージェント)をアップデートし、Webサービスを設定した後、PEM設定ウィザードは、サービスがリスンしているポートを通知します(図2.14を参照)。このポート番号は、PEMクライアントを使用してPEMサーバーに接続するときに使用します。
[ OKクリックしInfoポップアップを閉じます。 PEMサーバセットアップウィザードは、インストールが完了したことを通知します(図2.15を参照)。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥48ebcbaf¥three.png
図2.15 - PEM Serverのアップグレードが完了しました。
PEMサーバをアップグレードした後、バッキングデータベースをより新しいバージョンにアップグレードすることができます。バッキングデータベースのアップグレードについては、 第3章を 参照してください
 
2.1.1 RPMパッケージを使用したPEMサーバーのアップグレード
RPMパッケージを使用してPEMサーバーをインストールした場合は、RPMを使用してPEMサーバーをアップグレードできます。グラフィカルインストーラを使用して既存のPEMサーバをインストールした場合は、RPMパッケージを使用してPEM 7.5をインストールする前に、既存のサーバを削除する必要があります。 RPMパッケージを使用して PEMをインストール する方法の詳細については、次の PEMインストールガイド を参照してください
https://www.enterprisedb.com/resources/product-documentation
RPMパッケージを使用して既存のRPMインストールをアップグレードするには、次の作業を行う必要があります。
1。
yum upgrade edb-pem edb-pem-server
2。
setenforce 0
3。
/usr/edb/pem/bin/configure-pem-server.sh
構成スクリプトを呼び出すときに、構成プロパティーを指定するためのコマンド行オプションを組み込むことができます。スクリプトは、コマンド行で省略した値を入力するように指示します。受け入れ可能なオプションは次のとおりです。
-ci
-d
directory path for the PEM backing database. The data directory path for the PEM backing database.
The directory for the database server installation. For example, for Advanced Server or The directory for the database server installation. For example, /usr/edb/as10 for PostgreSQL. for Advanced Server or /usr/pgsql-10 for PostgreSQL.
-ds
-ho
-p
-ps
-sp
-su
-t
The installation type: Specify if the configuration is for web services and backing database, 2 if you are configuring web services, or 3 if you are configuring the backing database. If you specify 3, please note that the database must reside on the local host. 1 if the configuration is for web services and backing database, 2 if you are configuring web services, or 3 if you are configuring the backing database. If you specify 3, please note that the database must reside on the local host.
If you do not provide configuration properties on the command line, you will be prompted for values by the script.スクリプト関連のヘルプを表示するには、次のコマンドを使用します。
/usr/edb/pem/bin/configure-pem-server.sh --help
PEMサーバー構成ファイルを実行した後、バージョン固有のサービス制御コマンドを使用して、 httpdサービスを再始動します。
RPMパッケージを使用してPEMサーバーをインストールまたは構成する方法の詳細については、 PEMインストールガイドまたは「 Advanced Server Installation Guide」 を参照してください
http://www.enterprisedb.com/products-services-training/products/documentation/enterpriseedition
2.3 SQLプロファイラのアップグレード
SQLプロファイラのアップグレードに必要な手順は、プラットフォーム固有です。詳細については、使用しているプラットフォームのセクションを参照してください。
LinuxホストでのSQLプロファイラのアップグレード
Linuxホスト上に存在するSQLプロファイラのインストールをアップグレードするには:
1。
デフォルトでは、グラフィカルインストーラを使用してインストールされたLinuxホストでAdvanced Serverを使用している場合、スクリプトは Advanced Serverインストールのshare/contribディレクトリにあります。
LinuxホストでPostgreSQLのインストールを使用している場合、このスクリプトは PostgreSQLのインストールshare/postgresql/contrib下のshare/postgresql/contribディレクトリにあります。
2。
WindowsホストでのSQLプロファイラのアップグレード
WindowsホストでSQLプロファイラを使用している場合、Windowsは実行されたファイルまたはメモリにロードされたファイルをすべてロックします。ロックされたファイルを解放するには、アップグレードを実行する前にPostgresサーバを停止する必要があります。
Windowsでは、 Servicesダイアログを使用して Servicesを制御できます 。 [ Services ]ダイアログを開くには、[ Control Panelから[ System and Security ]メニューに移動します。 [ Administrative Tools ]を選択し、[ Services ]アイコンをダブルクリックします。 「 Servicesダイアログが開いたら、リスト内のサービス名を強調表示し、ダイアログに表示されているオプションを使用してサービスをStopします。
Postgresサーバーを停止した後:
1。
デフォルトでは、スクリプトは Advanced ServerまたはPostgreSQLインストールshare\contrib下のshare\contribディレクトリにあります。
2。
その後、PEMクライアントからノードのプロファイリングを再開するには、Postgres Serverを再起動します。 PEMコンポーネントを更新したら、バッキングデータベースを更新する準備が整いました。
3 バッキングPostgresデータベースのアップグレード
PEMコンポーネントとPEMバッキングデータベースの両方を更新する場合は、バッキングデータベースを更新する前に、PEMコンポーネントのアップデート(サーバー、エージェント、およびクライアント)を実行する必要があります。 PEMコンポーネントソフトウェアの更新の詳細については、 2
この節で説明する更新プロセスでは、pg_upgradeユーティリティを使用して、バッキングサーバの1つのバージョンから新しいバージョンに移行します。 pg_upgradeは、任意のバージョンのPostgres(バージョン9.3以降)と、同じプラットフォームでサポートされているPostgresの後続のリリース間の移行を容易にします。
pg_upgradeは、同じタイプのサーバ間でのデータ転送をサポートしています。たとえば、pg_upgradeを使用すると、PostgreSQL 9.6バッキングデータベースからPostgreSQL 10バッキングデータベースにデータを移動できますが、Advanced Server 10バッキングデータベースには移動できません。別のタイプのバッキングデータベース(PostgreSQLサーバからAdvanced Serverへ)に移行する場合は、セクション 4を参照してください。
pg_upgradeの使用に関する詳細は、次の場所にあります。
http://www.postgresql.org/docs/10/static/pgupgrade.html
ステップ1 - 更新されたバッキングデータベースインストーラをダウンロードして呼び出す
PostgreSQLとAdvanced Serverのインストーラは、EnterpriseDB Webサイトから入手できます。
http://www.enterprisedb.com
アップグレードするサーバーバージョンのインストーラをダウンロードした後、PEMサーバーのホストでインストーラを起動します。インストールウィザードの画面上の指示に従って、PostgreSQLサーバを設定してインストールします。
PEMバッキングデータベースのホストとしてカスタム構築のPostgreSQLサーバを使用することもできます。ポート 5432待機するPostgreSQLバッキングデータベースからアップグレードする場合は 、別のポートで待機するように新しいサーバを設定する必要があります.
ステップ2 - 新しいサーバでSSLユーティリティを設定する
新しいバッキングデータベースは 、現在のバッキングデータベースが実行しているものと同じバージョンの sslutils実行している必要があります 。次の場所にあるEnterpriseDBインストーラで使用されているSSL Utilsパッケージをダウンロードできます。
http://www.enterprisedb.com/downloads/component-source-code
Advanced Serverを新しいバッキングデータベースとして使用する場合は、 sslutils拡張子を手動で追加する必要はあり ませんsslutilsを設定するsslutilsは、プラットフォーム固有です。
Linuxの場合
Linuxを使用している場合は、アーカイブされたSSL Utilsファイルのバージョンを以下からダウンロードできます。
http://www.enterprisedb.com/downloads/component-source-code
ダウンロードが完了したら、 sslutilsフォルダを抽出し、アップグレードするPostgresバージョンのPostgresインストールディレクトリに移動します。
コマンドラインを開き、スーパーユーザーの権限を引き受けpg_configプログラムを見つけることができるmakePATH環境変数の値を設定します
export PATH=$PATH:/opt/ Postgres / xx /bin/
場所:
Postgresは次のいずれかを指定します:
PostgreSQLサーバにアップグレードする場合は、PostgreSQLを使用してください。
PostgresPlus Advanced Serverサーバーにアップグレードする場合。
xxは、移行先のPostgresのバージョンを指定します。
次に、 yum使用して sslutil依存関係をインストールしsslutil
yum install openssl-devel
移動し sslutilsフォルダ、およびビルドsslutilsように入力してパッケージを:
make USE_PGXS=1
make USE_PGXS=1 install
Windowsの場合
sslutilsは、元のバッキングデータベースでsslutilsをコンパイルするのと同じコンパイラを使用して、新しいバッキングデータベースでコンパイルするsslutilsがあります。 PostgreSQLのワンクリックインストーラ(EnterpriseDB)またはAdvanced Serverインストーラを使用してインストールされたPostgresデータベースに移動する場合は、Visual Studioを使用してsslutilsをビルドしsslutils 。あなたがアップグレードしている場合:
Windows上の特定のバージョンのPostgresを構築する方法の詳細については、そのバージョンのコアドキュメントを参照してください。コアのドキュメントは、PostgreSQLプロジェクトのWebサイトで入手できます。
http://www.postgresql.org/docs/
または次のEnterpriseDB Webサイトを参照してください。
http://www.enterprisedb.com/products-services-training/products/documentation/enterpriseedition
プロセスの詳細はプラットフォームとコンパイラによって異なりますが、各プラットフォームの基本的な手順は同じです。以下の例は、32ビットWindowsシステム上でPostgreSQLのOpenSSLサポートをコンパイルする方法を示しています。
OpenSSL拡張をコンパイルする前に、お使いのWindowsのバージョンに対応するOpenSSLを探してインストールする必要があります。 OpenSSLインストーラを起動する前に、必要な再配布可能 vcredist_x86.exe vcredist_x86.exe などをダウンロードしてインストールする必要があります
OpenSSLをインストールした後、次のURLにある SSL Utilユーティリティパッケージをダウンロードして解凍します。
http://www.enterprisedb.com/downloads/component-source-code
アンパックコピー sslutilsユーティリティをPostgresのインストールディレクトリにフォルダ(つまり、 C:\Program Files\PostgreSQL\9. x )。
Visual Studioコマンドラインを開き、 sslutilsディレクトリに移動します。次のコマンドを使用してsslutilsをビルドしsslutils
SET USE_PGXS=1
SET GETTEXTPATH=
path_to_gettext
SET OPENSSLPATH=
path_to_openssl
SET PGPATH=
path_to_pg_installation_dir
SET ARCH=x86
msbuild sslutils.proj /p:Configuration=Release
場所:
path_to_gettextは、 GETTEXTライブラリおよびヘッダーファイルの場所を指定します。
path_to_opensslは、 opensslライブラリとヘッダファイルの場所を指定します。
path_to_pg_installation_dir は、Postgresインストールの場所を指定します。
たとえば、次のコマンドセットは、OpenSSLのサポートをPostgreSQL 10サーバに組み込みます。
SET USE_PGXS=1
SET OPENSSLPATH=C:\OpenSSL-Win32
SET GETTEXTPATH="C:\Program Files\PostgreSQL\10"
SET PGPATH="C:\Program Files\PostgreSQL\10"
SET ARCH=x86

msbuild sslutils.proj /p:Configuration=Release
ビルドが完了すると、 sslutils ディレクトリには次のファイルが含まれます。
sslutils--1.1.sql
sslutils--unpackaged--1.1.sql
sslutils--pemagent.sql.in
sslutils.dll
コンパイルされた sslutilsファイルをインストール用の適切なディレクトリにコピーします。例えば:
COPY sslutils*.sql "%PGPATH%\share\extension\"
COPY sslutils.dll "%PGPATH%\lib\"
ステップ3 - サービスを停止する
古いバッキングデータベースと新しいバッキングデータベースの両方のサービスを停止します。
RHELまたはCentOS 6.xでは、コマンドラインを開き、スーパーユーザーのIDを仮定します。次のコマンドを入力します。
/etc/init.d/ service _ name stop
RHELまたはCentOS 7.xでは、コマンドラインを開き、スーパーユーザーのIDを引き継ぎます。次のコマンドを入力します。
systemctl/ service _ name stop
ここで、 service_nameはPostgresサービスの名前を指定します。
Windowsでは、 Servicesダイアログを使用して Servicesを制御できます 。 [ Services ]ダイアログを開くには、[ Control Panelから[ System and Security ]メニューに移動します。 [ Administrative Tools ]を選択し、[ Services ]アイコンをダブルクリックします。 「 Servicesダイアログが開いたら、リスト内のサービス名を強調表示し、ダイアログに表示されているオプションを使用してサービスをStopします。
ステップ4 - pg_upgradeを使用してサーバーを更新する
pg_upgradeユーティリティを使用すると、古いバッキングデータベースと新しいバッキングデータベースとの間で既存のデータのインプレース転送を実行できます。サーバーが md5認証を実施するように設定されている場合は、サーバーにエントリを追加する必要があります。データベーススーパーユーザーの接続プロパティ(およびパスワード)を指定するpgpassファイル、またはpg _ hba変更します。 confファイルを使用して、 pg _ upgradeを起動する前にtrust接続を許可しupgrade 。のエントリの作成の詳細については、をクリックしてください。 pgpassファイルについては、PostgreSQLのコアドキュメントを参照してください。
http://www.postgresql.org/docs/10/static/libpq-pgpass.html
アップグレードプロセス中、pg_upgradeは一連のログファイルを書き込みます。クラスタ所有者は、書き込み権限を持つディレクトリからpg_upgradeを呼び出す必要があります。アップグレードが正常に完了すると、pg_upgradeはアップグレードが完了したときにログファイルを削除します。アップグレードログファイルを削除しないようにpg_upgradeに指示するには --retain を呼び出すときに --retain キーワードを含めます。
pg_upgradeを起動するには、クラスタ所有者のIDを引き継ぎ、クラスタ所有者が書き込み権限を持つディレクトリに移動し、次のコマンドを実行します。
path_to_pg_upgrade/ pg_upgrade
-d old_data_dir_path
-D new_data_dir_path
-b
old_bin_dir_path -B new_bin_dir_path
-p
old_port -P new_port
-u
user_name
場所:
path_to_pg_upgradeは、pg_upgradeユーティリティの場所を指定します。デフォルトでは、pg_upgradeはPostgresディレクトリ下のbinディレクトリにインストールされます。
old_data_dir_pathは、古いバッキングデータベースのdataディレクトリへの完全なパスを指定します。
new_data_dir_pathは、新しいバッキングデータベースのdataディレクトリへの完全なパスを指定します。
old_bin_dir_pathは、古いバッキングデータベースのbinディレクトリへの完全なパスを指定します。
new_bin_dir_pathは、古いバッキングデータベースのbinディレクトリへの完全なパスを指定します。
old_portは、古いサーバーがリッスンしているportを指定しport
new_port 新しいサーバーがリスニングしているportを指定しport
user_nameは、クラスタ所有者の名前を指定します。
たとえば、次のコマンドを実行します。
C:\>"C:\Program Files\PostgreSQL\10\bin\pg_upgrade.exe"
-d "C:\Program Files\PostgreSQL\9.6\data"
-D "C:\Program Files\PostgreSQL\10\data"
-b "C:\Program Files\PostgreSQL\9.6\bin"
-B "C:\Program Files\PostgreSQL\10\bin"
-p 5432 -P 5433
-u postgres
PgデータベースをPostgreSQL 9.6からWindowsシステム上のPostgreSQL 10に移行するようにpg_upgradeに指示します(バッキングデータベースがデフォルトの場所にインストールされている場合)。
一度起動すると、pg_upgradeはデータを新しいバッキングデータベースに移動する前に整合性チェックを実行します。アップグレードが完了すると、pg_upgradeはアップグレードが完了したことを通知します。
pg_upgradeオプションの使用方法やアップグレードプロセスのトラブルシューティングの詳細については、以下を参照してください。
http://www.postgresql.org/docs/10/static/pgupgrade.html
ステップ5 - 古いデータベースから新しいデータベースへの証明書ファイルのコピー
次の証明書ファイルをコピーし dataに古いバッキングデータベースのディレクトリdata 、新しいバッキングデータベースのディレクトリ:
デフォルトでは、ファイルはPostgresインストールの下のデータディレクトリにあります。
ターゲットサーバ上にいったん配置されると、ファイルは以下に説明されている(プラットフォーム固有の)アクセス許可を持つ必要があります。
Linuxでのパーミッションと所有権
Linuxでは、証明書ファイルは postgres が所有していなければなりません 。コマンドラインで次のコマンドを使用して、ファイルの所有権を変更することができます。
chown postgres file _ name
ここで、 file_nameは証明書ファイルの名前を指定します。
servercrtファイルはファイルの所有者のみが変更できますが、どのユーザーも読み取ることができます。次のコマンドを使用して、 serverファイルアクセス権を設定servercrtファイル:
chmod 644 server.crt
他の証明書ファイルは、ファイルの所有者のみが変更または読み取ることができます。次のコマンドを使用して、ファイルのアクセス許可を設定できます。
chmod 600 file_name
どこ file_name 、ファイルの名前を指定します。
Windowsでのアクセス許可と所有権
Windowsでは、ソースホストから移動した証明書ファイルは、PEMサーバーを実行したサービスアカウントとターゲットホスト上のデータベースのバックアップを所有している必要があります。 Run を使用してPEMサーバとPostgreSQLインストーラを起動した場合 as Administrator オプション(インストーラのコンテキストメニューから選択)を選択すると、証明書ファイルの所有者は Administrators ます。
Windows上でファイルのアクセス許可を確認および変更するには、ファイル名を右クリックして[ Properties ]を選択し Properties
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥c34d18de¥server_key.png
図3.3 - [セキュリティ]タブ
移動し Security ]タブ(図3.3を参照)、ハイライトGroup or user name割り当てられた権限を表示します。選択したユーザーに関連付けられているアクセス許可を変更できるダイアログにアクセスするには、[ Editまたは[ Advancedを選択します。
ステップ6 - 新しいサーバー構成ファイルを更新する
postgresqlconfファイルには、サーバの動作を指定するパラメータ設定が含まれています。 postgresqlを変更する必要があります。 confファイルをpostgresql指定された設定と一致するように新しいサーバに追加します。古いサーバーのconfファイル。
デフォルトでは、 postgresqlconfファイルがあります:
Linuxの場合、 /opt/PostgreSQL/10.x/data
Windowsの場合、 C:\Program Files\PostgreSQL\10.x\data
postgresql を更新するには、選択したエディタを使用します 。新しいサーバーのconfファイル。次のパラメータを変更します。
port元のバッキングデータベース(通常は、によって監視ポートをリッスンするためのパラメータ5432 )。
sslパラメータがに設定されなければなりませんon
次のパラメータが有効になっていることも確認する必要があります。パラメータがコメントアウトされている場合は、各 postgresql 前にあるポンド記号を削除します。 confファイルのエントリ:
ssl_cert_file = 'server.crt' # (change requires restart)
ssl_key_file = 'server.key' # (change requires restart)
ssl_ca_file = 'root.crt' # (change requires restart)
ssl_crl_file = 'root.crl'
インストールには、新しいバッキングデータベースが古いバッキングデータベースに匹敵するように動作するように、変更が必要な他のパラメータ設定が含まれている場合があります。 postgresql 確認します。 confファイルは慎重新しいサーバーの構成は、古いサーバの設定と一致していることを確認します。
ステップ7 - 新しいサーバー認証ファイルを更新する
pg_hbaconfファイルには、サーバがホストベース認証をどのように強制するかを指定するパラメータ設定が含まれています。 PEMサーバーをインストールすると、インストーラによってpg _ hba変更されます。 confファイルを作成し、ファイルの先頭にエントリを追加します。
# Adding entries for PEM agents and admins to connect to PEM server
hostssl pem +pem_user 192.168.2.0/24 md5
hostssl pem +pem_agent 192.168.2.0/24 cert
# Adding entries (localhost) for PEM agents and admins to connect to PEM server
hostssl pem +pem_user 127.0.0.1/32 md5
hostssl postgres +pem_user 127.0.0.1/32 md5
hostssl pem +pem_user 127.0.0.1/32 md5
hostssl pem +pem_agent 127.0.0.1/32 cert
デフォルトでは、 pg_hbaです。 confファイルがあります:
Linuxの場合、 /opt/PostgreSQL/10.x/data
Windowsの場合、 C:\Program Files\PostgreSQL\10.x\data
選択したエディタを使用して、 pg _ hba からエントリをコピーします 。古いサーバのconfファイルをpg _ hbaます。新しいサーバーのconfファイル。
ステップ8 - 新しいPostgresサーバを再起動する
新しいバッキングデータベースのサービスを開始します。 RHELまたはCentOS 6.xでは、コマンドラインを開き、スーパーユーザーのIDを仮定します。次のコマンドを入力します。
/etc/init.d/ service _ name start
RHELまたはCentOS 7.xでは、コマンドラインを開き、スーパーユーザーのIDを引き継ぎます。次のコマンドを入力します。
systemctl stop service _ name
ここで、 service_nameはバッキングデータベースサーバーの名前です。
Windowsを使用している場合は、「 Servicesダイアログを使用して Servicesを制御できます 。 [ Services ]ダイアログを開くには、[ Control Panelから[ System and Security ]メニューに移動します。 [ Administrative Tools ]を選択し、[ Services ]アイコンをダブルクリックします。 「 Servicesダイアログが開いたら、リスト内のサービス名を強調表示し、ダイアログで提供されているオプションを使用してサービスをStartします。
4 Postgres Enterprise Manager™サーバの移動
このセクションの手順では、あるホストマシンから新しいホストマシンにPEMサーバーを移動する方法について説明します。新しいホスト(ターゲット)上のPEMサーバーは、元のホスト(ソース)と同じバージョンのPEMサーバーインストーラーでインストールする必要があります。同じインストーラバージョンを使用しない場合は、スキーマの不一致エラーが発生する可能性があります。
ターゲットサーバ(PostgreSQLまたはAdvanced Server)のバッキングデータベースは、同じタイプとバージョン、またはソースPEMサーバのバッキングデータベースと異なるタイプとバージョンである場合があります。 PostgreSQLホストにあるPEMサーバーは、Advanced Serverホストに移行することも、その逆も可能です。
サーバーの移行を開始する前に、ソースホスト、ターゲットホスト、およびPEMエージェントのホスト間のファイアウォールでサービス間の接続が許可されていることを確認する必要があります。
ステップ1 - ターゲットホストの準備
ターゲットホスト上のPEMサーバーのインストーラを起動します。ソースPEMサーバーのインストール時に使用したのと同じバージョンのPEMサーバーインストーラーを使用する必要があります。
ターゲットサーバのバッキングデータベースは、ソースのバッキングデータベースとは異なるバージョンまたはタイプであってもよい。新しいPEMサーバーが元のサーバーと同じ種類のバッキングデータベースに存在 ない 場合は 、同じバージョンのsslutils拡張機能が新しいサーバーホストにインストールされていることを確認する必要があります。 PEMインストーラと共に配布されるsslutilsのバージョンは、次のEnterpriseDB Webサイトから自由にダウンロードできます。
http://www.enterprisedb.com/downloads/component-source-code
PEMサーバーまたは sslutils拡張機能のインストールについては、PEMインストールガイドを参照してください。
http://www.enterprisedb.com/documentation/english
ステップ2 - 新しいPEMサーバーから既存のスキーマを削除する
移行プロセスは、ターゲットPEMサーバー上のソースPEMサーバーからpempemdata 、およびpemhistoryスキーマを再作成します。移動の準備として、 psqlクライアントを使用して、ターゲットホスト上のpemデータベースからこれらのスキーマを削除します。コマンドラインでpsqlクライアントを開くか、 Postgres Enterprise ManagerメニューからSQL Shell (psql)選択してpsqlクライアントを開くことができます。
psqlクライアントが開いたら、データベーススーパーユーザーとしてpemバッキングデータベースに接続します。ターゲットホスト上のpemデータベースに接続しpem 、次のコマンドを使用してスキーマを削除します。
DROP SCHEMA pem CASCADE;
DROP SCHEMA pemdata CASCADE;
DROP SCHEMA pemhistory CASCADE;
スキーマを削除するときは、サーバーにすべての従属オブジェクトを削除するように指示するCASCADEキーワードを含める必要があります。このコマンドを実行すると、 psqlクライアントは依存オブジェクトのリストを表示します。クライアントは、 DROP SCHEMA表示することによって、各スキーマが削除されたことを確認します(図4.1を参照)。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥14a9230a¥movetwo.png
図4.1 - pemスキーマの削除
ステップ3 - 新しいPEMサーバーでPEMエージェントを準備する
PEMサーバーを移動する前に、ソースPEMサーバーによって監視されているエージェントの数を特定し、ターゲットサーバー上のその数のエージェント(少ない数)のIDを作成する必要があります。 PEMサーバによって監視されるPEMエージェントの総数を調べるには、 psqlクライアントを使用してソースホスト上のpemデータベースに接続しpem.agentテーブルを問い合わせます(図4.2を参照)。
SELECT id FROM pem. agent WHERE active = true;
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥5b56b8cd¥msthree.png
図4.2 - ソースPEMサーバー上のpemデータベースを照会する。
元のPEMサーバに常駐するエージェントの数を手動で作成する必要があります。 PEMサーバインストーラはすでにターゲットホスト上に1つのエージェントを作成しています。たとえば、ソースサーバーに3つのエージェントが含まれている場合は、手動で2つのエージェントを追加作成する必要があります。ターゲットサーバ上のpemデータベースとのpsqlセッションを開き 、必要なエージェントを作成します。次のコマンドを使用します。
CREATE USER agent x ;
ここで x 、エージェントの数を指定します(図4.3を参照)。 agent1は、PEMサーバーインストーラによってターゲットホスト上に作成されます。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥1622249f¥movefour.png
図4.3 - ターゲットに追加のエージェントを作成する
次に、 GRANTコマンドを使用して、ターゲットPEMサーバーのpem_agent権限にある各エージェントを割り当てます。
GRANT pem_agent TO agent x GRANT pem_agent TO agent ;
ここで、 xエージェントの番号を指定する(図4.4参照)。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥d8573dc4¥movefive.png
図4.4 - ターゲット上のエージェントへの権限の付与
ステップ4 - ソースPEMサーバーのバックアップスクリプトを生成する
pg_dumpユーティリティを使用して、ターゲットホスト上のpemデータベースを再作成するために必要なコマンドを含むスクリプトを生成することができます 。デフォルトでは、 pg_dumpはあなたのPostgresインストール下のbinディレクトリにインストールされます。 pg_dumpを起動するには、コマンドラインを開いてbinディレクトリに移動し、次のように入力します。
pg_dump -U user_name db_name > file_name
場所:
user_nameは、PEMバッキングデータベースのデータベーススーパーユーザーの名前を指定します。
file_nameは、 pg_dumpによって生成されたスクリプトの名前を指定します。
プロンプトが表示されたら、指定されたユーザーに関連付けられたパスワードを入力します。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥da5d3bf2¥mssix.png
図4.5 - バックアップスクリプトの生成。
図4.5に示すコマンドは 、(実行されると) pemデータベースを再作成するスクリプトを生成するように pg_dump指示します。スクリプトの名前はbackupます。 sqlされ、 tmpディレクトリに作成されます。 pg _ dumpは、ユーザーpostgres資格情報を使用してサーバーに接続しています。
pg_dumpユーティリティを起動しても、現在のデータベースユーザは中断されません。
ステップ5 - バックアップをターゲットホストに移動する
pg_dumpユーティリティで生成されたスクリプトを PEMサーバーのターゲットホストに移動します。
ステップ6 - ターゲットホストでバックアップを復元する
ターゲットホストでコマンドラインを開き、 binディレクトリ(Postgresのバッキングデータベースインストールディレクトリの下)に移動します。 psql起動し、 pg_dumpユーティリティで生成されたスクリプトを実行します。
psql -U user_name -d pem -f file_name
場所:
user_nameは、データベーススーパーユーザーの名前を指定します。指定されたユーザーは、バッキングデータベースの接続権限を持っている必要があります。
file_nameは、 pg _ dumpによって生成されたバックアップスクリプトへの完全なパスを指定します。
プロンプトが表示されたら、データベーススーパーユーザーに関連付けられているパスワードを入力します。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥d8d43c60¥moveseven.png
図4.6 - バックアップスクリプトの復元。
図4.6に示す例では、 psqlクライアントを使用して backupという名前のスクリプトを呼び出しています。 sqlを使用してpemデータベースを再作成します。スクリプトは、データベースのスーパーユーザーpostgres関連付けられた権限を使用して呼び出されます。
ステップ7 - ターゲットホストでデータベースサーバーを停止する
LinuxでPEMサーバーを停止するには、次のコマンドを使用します。
/etc/init.d/ service _ name stop
service_nameは、バッキングデータベースサーバーの名前を指定します。 PostgreSQLバッキングデータベースの場合、サービス名はpostgresql-x. x 、Advanced Serverバッキングデータベースの場合、サービス名はppas-x. xxはバージョン番号を指定します。
Windowsを使用している場合は、「 Servicesダイアログを使用して Servicesを制御できます 。 [ Services ]ダイアログを開くには、[ Control Panelから[ System and Security ]メニューに移動します。 [ Administrative Tools ]を選択し、[ Services ]アイコンをダブルクリックします。 「 Servicesダイアログが開いたら、リスト内のサービス名を強調表示し、ダイアログに表示されているオプションを使用してサービスをStopします。
ステップ8 - 証明書ファイルをターゲットホストにコピーする
ターゲットホストのインストール時に作成される証明書ファイルは、ソースホストの証明書ファイルで置き換える必要があります。ソースPEMサーバーからターゲットPEMサーバーに次のファイルをコピーします。
ca_certificate.crt
ca_key.key
root.crt
root.crl
server.key
server.crt
ターゲットクラスタのバッキングデータベースを提供するPostgresインストールの下 dataディレクトリにファイルをコピーします 。 Linuxでは、デフォルトでファイルは次の場所にあります。
/opt/PostgreSQL/xx/data/
Windowsでは、ファイルは次の場所にあります。
C:\Program Files\PostgreSQL\xx\data
ファイルはすでにターゲットクラスタに存在します。コピーを実行する前に既存のファイルを削除するか、または既存のファイルをソースサーバーのファイルで上書きします。ターゲットサーバー上の所定の場所に置かれると、ファイルは、以下のセクションで説明されている(プラットフォーム固有の)アクセス許可を持つ必要があります。
Linuxでのパーミッションと所有権
Linuxでは、証明書ファイルは postgres が所有していなければなりません 。コマンドラインで次のコマンドを使用して、ファイルの所有権を変更することができます。
chown postgres file _ name
ここで、 file_nameは証明書ファイルの名前を指定します。
servercrtファイルはファイルの所有者のみが変更できますが、どのユーザーも読み取ることができます。次のコマンドを使用して、 serverファイルアクセス権を設定servercrtファイル:
chmod 644 server.crt
他の証明書ファイルは、ファイルの所有者のみが変更または読み取ることができます。次のコマンドを使用して、ファイルのアクセス許可を設定できます。
chmod 600 file_name
どこ file_name 、ファイルの名前を指定します。
Windowsでのアクセス許可と所有権
Windowsでは、ソースホストから移動した証明書ファイルは、PEMサーバーを実行したサービスアカウントとターゲットホスト上のデータベースのバックアップを所有している必要があります。 Run を使用してPEMサーバとPostgreSQLインストーラを起動した場合 as Administrator オプション(インストーラのコンテキストメニューから選択)を選択すると、証明書ファイルの所有者は Administrators ます。
Windows上でファイルのアクセス許可を確認および変更するには、ファイル名を右クリックして[ Properties ]を選択し Properties
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥8e39848c¥server_key.png
図4.7 - [権限]タブ
移動し Security ]タブ(図4.7を参照)、ハイライトGroup or user name割り当てられた権限を表示します。選択したユーザーに関連付けられているアクセス許可を変更できるダイアログにアクセスするには、[ Editまたは[ Advancedを選択します。
 
ステップ9 - PEMエージェント証明書ファイルをPEMサーバーホストに移動する
ソースPEMサーバーのPEMエージェントが使用する証明書ファイルをターゲットホストに移動する必要があります。このステップはプラットフォーム固有です。
Linuxの場合
コピー agent1.keyagent1.crtターゲットホストに送信元ホストからファイルを。デフォルトでは、Linuxではファイルは/ root /にインストールされます。 pem ;ターゲットホスト上の同じディレクトリにファイルをコピーします。
ファイルの所有権とアクセス許可は、次のように設定する必要があります。
必要に応じて /root/.pem に移動し 、次のコマンドを使用してagent1.keyファイルのアクセス権と所有権を変更します。
chmod 600 agent1.key
chown root agent1.key
agent1.crtファイルのアクセス権と所有権を変更するには、次のコマンドを使用します。
chmod 644 agent1.crt
chown root agent1.crt
Windowsの場合
コピー agent1.keyagent1.crtターゲットホストに送信元ホストからファイルを。 Windowsでは、ファイルは次の場所にあります。
C:\Users\ user_name \AppData\Roaming\pem
どこ user_name PEMのインストーラを起動したユーザの名前です。
ターゲットマシン上の証明書ファイルに関連付けられた所有権とアクセス許可は、ソースマシン上の証明書ファイルの所有権とアクセス許可と一致する必要があります。 Run を使用してPEMサーバとPostgreSQLインストーラを起動した場合 as Administrator オプション(インストーラのコンテキストメニューから選択)を選択すると、エージェント証明書ファイルの所有者は Administrators ます。
Windows上でファイルのアクセス許可を確認および変更するには、ファイル名を右クリックして[ Properties ]を選択し Properties 。移動し Security タブを強調表示しGroup or user name割り当てられた権限を表示します。選択したユーザーに関連付けられているアクセス許可を変更できるダイアログにアクセスするには、[ Editまたは[ Advancedを選択します。
ステップ10 - ターゲットホスト上のpg_hba.confファイルを更新する
それぞれのPEMエージェントからの接続を許可するように、ターゲットホスト上 pg_hba.confファイルを変更します。デフォルトでは、 pg_hba.confファイルはPostgresインストールの下のdataディレクトリにあります。
ステップ11 - ターゲットホスト上でサーバを起動する
pg_hba.confファイルを変更したら、変更を有効にするためにサーバを再起動する必要があります。
Linuxでデータベースサーバを再起動するには、次のコマンドを使用します。
/etc/init.d/ service _ name start
ここで、 service_nameはバッキングデータベースサーバーの名前です。
Windowsを使用している場合は、「 Servicesダイアログを使用して Servicesを制御できます 。 [ Services ]ダイアログを開くには、[ Control Panelから[ System and Security ]メニューに移動します。 [ Administrative Tools ]を選択し、[ Services ]アイコンをダブルクリックします。 「 Servicesダイアログが開いたら、リスト内のサービス名を強調表示し、ダイアログで提供されているオプションを使用してサービスをStartします。
ステップ12 - 新しいエージェントを新しいPEMサーバーホストに接続する
既存のPEMエージェントに新しいPEMサーバーホストへの接続を指示するには、次の作業を行う必要があります。
これらの手順はプラットフォーム固有です。
PEMエージェントがLinuxに存在する場合
pem_hostおよびpem_portパラメータにPEMサーバーの新しいIPアドレスとポート番号を指定して、 agent.cfgファイル(図4.8を参照)を変更するエディタを使用します。
デフォルトでは、 agent.cfgファイルは次の場所にあります。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥85928a04¥agentcfg.png
図4.8 - agent.cfgファイル
agent.cfgファイルを変更したら、PEMエージェントサービスを再起動する必要があります。 Linuxのコマンドラインでpemagentサービススクリプトを使用してサービスを再開することができます。
/etc/init.d/pemagent restart
Windows上にPEMエージェントが存在する場合
監視対象ノードでWindowsレジストリを変更する前に、PEMエージェントのホスト上のファイアウォールがPEMサーバーへの接続を許可することを確認してください。 PEMエージェントホストがPEMサーバーホストに接続できることを確認したら、Windows Registry Editorを使用してPEM_HOSTおよびPEM_PORTエントリを確認および編集して、PEMサーバーが使用するホストおよびポートを正しく識別できるようにします。 Registry Editorを開くには、Windowsの[ Run ]ダイアログボックスまたはWindowsの[スタート]メニューの検索ボックスにregeditします。
レジストリエントリを表示または変更するには、レジストリツリーコントロール(図4.9を参照)を操作します。 64ビットWindowsでは、PEMエージェントのレジストリエントリは次の場所にあります。
HKEY_LOCAL_MACHINE àSOFTWARE à wow6432Mode à EnterpriseDB à PEM à agent
32ビットWindowsでは、PEMエージェントのレジストリエントリは次の場所にあります。
HKEY_LOCAL_MACHINE àSOFTWARE à EnterpriseDB à PEM à agent
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥5171f269¥Screen Shot 2016-11-03 at 9.50.24 AM.png
図4.9 - Windowsのレジストリエディタ
PEM_HOSTPEM_PORTエントリは、ターゲットホスト上の新しいPEMサーバのアドレスとポート番号を指定する必要があります。レジストリエントリを変更するには、エントリName右クリックし、コンテキストメニューからModifyを選択してEdit Stringダイアログを開きます。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥cbd449a5¥chregistry.png
図4.10 - Windowsレジストリエディタ
[ String Edit ]ダイアログを使用して 、エントリの値を変更します(図4.10を参照)。終了したら、[ OK ]をクリックして変更を保存するか、[ Cancel ]をクリックして保存せずに終了します。
レジストリを変更したら、PEMエージェントのサービスを再起動する必要があります。 Windows Control Panelからアクセスできる[ Services ]ダイアログを使用してPostgres Enterprise Manager - pemAgentサービスを再起動pemAgentます(図4.11を参照)。
C:¥Users¥susan¥AppData¥Local¥Temp¥vmware-susan¥VMwareDnD¥cbd54186¥services.png
図4.11 - PEMエージェントのサービスを再起動する。
サーバを移動した後、インストールされているPEMクライアントの接続プロパティを変更して、PEMサーバ、エージェント、および監視対象サーバの新しいホストに接続します。
5 LinuxホストでのRPMパッケージによるグラフィカルインストールのアップグレード
PEMの将来のリリースでは、グラフィカルインストーラはLinuxホストでは使用できません。 RPMパッケージを使用してLinuxインストールをインストールまたは更新する必要があります。以下のセクションでは、Linuxホスト上のグラフィカルインストーラを使用して実行されたPEMインストールをアップグレードするプロセスについて説明します。
5.1 グラフィカルインストーラでインストールされたPEMサーバーのアップグレード
グラフィカルインストーラによってインストールされたときのPEMサーバーのデフォルトのインストール場所は / opt / edb / pemです。次の例では、サーバーのインストール場所をPEM_installation_pathに置き換えてください。
1。
2。
systemctl stop PEMHTTPD
3。
setenforce 0
yum install epel-release *
4。
yum install http://yum.enterprisedb.com/edbrepos/edb-repo-latest.noarch.rpm
5。
リポジトリー構成ファイルのインストールが完了したら、選択したエディターを使用して依存関係ツール・リポジトリー定義変更し、リポジトリー定義が使用可能になっていることを確認し、正しいリポジトリー信任状を提供します。たとえば、 viを使用するには、次のように入力します。
vi /etc/yum.repos.d/edb.repo
6。
yumを makecacheコマンドは、現在有効なリポジトリのメタデータをダウンロードします。コマンドが完了したら、利用可能なパッケージをチェックして、リストに最新のPEMサーバーが含まれていることを確認します。
yum makecache
yum list edb-pem-server
7。
PEMサーバーのRPMをインストールします。インストールが完了したら、 yum infoコマンドを使用してインストールの詳細を確認します。
yum install edb-pem-server
yum info edb-pem-server
8。
インストール後、 エージェントを コピーします。 cfgファイルを、現在の場所(グラフィカルインストーラで必要な場所)からRPMパッケージに必要な場所にコピーします。
cp / PEM_installation_path /agent/etc/agent.cfg /usr/edb/pem/agent/etc/agent.cfg
9。
vi /usr/edb/pem/agent/etc/agent.cfg
次に、 ca_fileパラメータの値を設定します。
ca_file = / usr / libexec / libcurl-pem / share / certs / ca-bundle.crt
10。
pemを コピーします。 dbファイル(およびその他の必要なファイル)をRPMのインストール場所にコピーし、ファイルの所有権を変更します。
cp -r / PEM_installation_path /server/share/pemhome/.pem/* /var/lib/pemhome/.pem/
chown -R pem:pem /var/lib/pemhome/.pem/
11。
passwdファイル内のホームディレクトリを、グラフィカルインストーラによって特定された場所からRPMの場所に変更します。
usermod -m -d / var / lib / pemhome pem
cat / etc / passwd | grep pem
12。
cp /usr/lib/systemd/system/pemagent.service /usr/lib/systemd/system/pemagent.service_bkp
mv /root/.pem/agent1.key/root/.pem/agent1.key.bkp
mv /root/.pem/agent1.crt/root/.pem/agent1.crt.bkp
13。
/ PEM_installation_path / server / uninstall-pemserver
14。
/usr/edb/pem/bin/configure-pem-server.sh
15。
cp /usr/lib/systemd/system/pemagent.service_bkp /usr/lib/systemd/system/pemagent.service
mv /root/.pem/agent1.crt.bkp /root/.pem/agent1.crt
mv /root/.pem/agent1.key.bkp /root/.pem/agent1.key
16。
pemagentサービスを有効にし、 pemagentおよびhttpdサービスを開始します。
systemctl enable pemagent
systemctl start pemagent
systemctl start httpd
17。
5.2 グラフィカルインストーラでインストールされたPEMエージェントのアップグレード
グラフィカルインストーラによってインストールされたときのPEMサーバーのデフォルトのインストール場所は / opt / edb / pemです。次の例では、サーバーのインストール場所をPEM_installation_pathに置き換えてください。
1。
RHELまたはCentOS 7.xの場合:
systemctl stop pemagent
RHELまたはCentOS 6.xの場合:
/etc/init.d/pemagent stop(RHEL -6)
2。
setenforce 0
yum install epel-release *
3。
setenforce 0
yum install epel-release *
4。
yum install http://yum.enterprisedb.com/edbrepos/edb-repo-latest.noarch.rpm
5。
リポジトリ設定ファイルのインストールが完了したら、 依存関係ツールリポジトリ定義変更してリポジトリ定義が有効になっていることを確認し、正しいリポジトリ認証情報を提供するために、選択したエディタを使用します
vi /etc/yum.repos.d/edb.repo
6。
yumを makecacheコマンドは、現在有効なリポジトリのメタデータをダウンロードします。コマンドが完了したら、使用可能なパッケージをチェックして、リストに最新のPEMエージェントが含まれていることを確認します。
yum makecache
yum list edb-pem-agent
7。
yum install edb-pem-agent
yum info edb-pem-agent
8。
cp /PEM_installation_path/agent/etc/agent.cfg /usr/edb/pem/agent/etc/agent.cfg
9。
vi /usr/edb/pem/agent/etc/agent.cfg
次に、 ca_fileパラメータの値を設定します。
ca_file = / usr / libexec / libcurl-pem / share / certs / ca-bundle.crt
10。
RHELまたはCentOS 7.xでは、次のコマンドを使用してサービスファイルをバックアップします。
cp /usr/lib/systemd/system/pemagent.service /usr/lib/systemd/system/pemagent.service_bkp
RHELまたはCentOS 6.xでは、次のコマンドを使用してサービスファイルをバックアップします。
cp /etc/init.d/pemagent /etc/init.d/pemagent_bkp
次に、エージェント証明書をコピーします。次のコマンドで、 エージェント _ IDは、エージェント識別子(例えば、 エージェント2またはagent3)を指定する必要があります。
MV /root/.pem/ AGENT_ID .KEY /root/.pem/ AGENT_ID .key.bkp
mv /root/.pem/ agent_id .crt /root/.pem/accept_id .crt.bkp
11。
/ PEM_installation_path / agent / uninstall-pemagent
12。
たとえば、RHELまたはCentOS 7.xホストの場合:
cp /usr/lib/systemd/system/pemagent.service_bkp /usr/lib/systemd/system/pemagent.service
RHELまたはCentOS 6.xホストの場合:
cp /etc/init.d/pemagent /etc/init.d/pemagent_bkp
次に、エージェント証明書ファイルを移動します。
MV /root/.pem/ AGENT_ID .key.bkp /root/.pem/ エージェント _ のid .KEY
MV /root/.pem/ AGENT_ID .CRT .bkp /root/.pem/ エージェント _ ID .CRT
13。
有効 pemagentサービスを、そしてpemagentのhttpdを起動します RHELまたはCentOS 7.xホストでは、次のコマンドを使用します。
systemctl enable pemagent
systemctl start pemagent
RHELまたはCentOS 6.xホストの場合:
/etc/init.d/pemagent start
この時点で、PEMエージェントが稼動している必要があります。 PEM Webインターフェイスを使用して、エージェントのバージョンとステータスを確認できます。
6 トラブルシューティング
6.1 pem.alertテーブルが復元に失敗する
復元する場合 pemバックアップからのバッキングデータベースを、あなたはの復元中にエラーが発生することがありpemalertテーブル。これは、テーブルの前提条件が不足しているために発生します.pg_restoreユーティリティはpem復元します。 pem.alertを復元しようとした後に alertの前提条件 pem.alertます。
この場合、pg_restoreの出力には、 alertテーブルを参照するエラーメッセージが含まれます
pg_restore: [archiver (db)] could not execute query: ERROR: insert or update on table "alert_history" violates foreign key constraint "alert_history_alert_id_fkey"
DETAIL: Key (alert_id)=(3) is not present in table "alert".
Command was: ALTER TABLE ONLY alert_history
ADD CONSTRAINT alert_history_alert_id_fkey FOREIGN KEY (alert_id) REFERENCES alert(id) ON...
pg_restore: creating FK CONSTRAINT alert_status_alert_id_fkey
pg_restore: [archiver (db)] Error from TOC entry 3265; 2606 18355 FK CONSTRAINT alert_status_alert_id_fkey postgres
pg_restore: [archiver (db)] could not execute query: ERROR: insert or update on table "alert_status" violates foreign key constraint "alert_status_alert_id_fkey"
DETAIL: Key (alert_id)=(1) is not present in table "alert".
Command was: ALTER TABLE ONLY alert_status
ADD CONSTRAINT alert_status_alert_id_fkey FOREIGN KEY (alert_id) REFERENCES alert(id) ON U...
この問題が発生した場合、復元 pem復元する前に、データベースをpemalertテーブル。復元pemデータベースはのための前提条件をインストールしますpemalertが表示され、テーブルの復元が期待通りに完了するはずです。
7 Postgres Enterprise Manager™のアンインストール
LinuxまたはSolarisのAdvanced ServerまたはPostgreSQLインストールからPEMコンポーネントを削除するには、PEMインストールディレクトリにあるアンインストーラを使用します。デフォルトでは、PEMアンインストーラは次の場所にあります。
Where xx specifies the Postgres version.
コンポーネントを削除するには、スーパーユーザー権限を引き受け、ターミナルウィンドウを開き、アンインストーラが存在するディレクトリに移動します。次のようにインストーラを起動します。
./uninstall- component _ name
ここで、 component_nameは削除するコンポーネントの名前です。
PEMのインストールがWindowsホスト上に存在する場合は、Windowsを使用することができます Add/Remove Programs PEMのコンポーネントを削除するアプリケーションを。 WindowsのControl Panelから[ ProgramsAdd/Remove ]オプションを選択します。コントロールパネルが開いたら、プログラムリストでPEMコンポーネントの名前を探します。コンポーネントを削除するには、[ Remove ]ボタンをクリックします。