PGDATAを移動する手順(Linux環境)

MaxGaugeサーバのリポジトリDB(postgreSQL)のデータファイルのあるデータディレクトリ($PGDATA)を移動する手順です。

※PostgreSQL9.4の例

PGDATAを移動する手順(Linux環境)

対象バージョン

  • MFO5.3.J3

  • MFO5.3.J4

  • MFO5.3.J5

  1. MaxGaugeサーバの全プロセスを停止する

    ※rootユーザ

    [CentOS6, RHEL6, ORACLE Linux 6]

    service mfo-platformjs stop
    service mfo-dg-slave1  stop
    service mfo-dg-master  stop
    service postgresql-9.4 stop
    

    [CentOS7, RHEL7, ORACLE Linux 7]

    systemctl stop mfo-platformjs
    systemctl stop mfo-dg-slave1
    systemctl stop mfo-dg-master
    systemctl stop postgresql-9.4
    
  2. $PGDATAの移動先ディレクトリを作成する

    ※rootユーザ

    mkdir <$PGDATAの移動先>
    chown -R postgres:postgres <PGDATAの移動先>
    
    例)
    mkdir /maxgauge/
    mkdir /maxgauge/postgres
    chown -R postgres:postgres /maxgauge/
    
  3. $PGDATAの確認

    ※postgresユーザ

    echo  $PGDATA
    デフォルト:/var/lib/pgsql/9.4/data/
    
  4. $PGDATAのディレクトリを移動する

    ※postgresユーザ

    mv <$PGDATAの移動元> <$PGDATAの移動先>
    
    例)
    mv /var/lib/pgsql/9.4/data /maxgauge/postgres/
    
  5. postgresqlサービスファイルのバックアップ

    ※rootユーザ

    [CentOS6, RHEL6, ORACLE Linux 6]

    注釈

    postgresqlサービスファイルを直接変更するためバックアップする場合は実施

    mkdir <バックアップ先>/backup/
    mkdir <バックアップ先>/backup/`date "+%Y%m%d"`
    cp -p /etc/init.d/postgresql-9.4  <バックアップ先>/backup/`date "+%Y%m%d"`/
    例)
    mkdir /opt/backup/
    mkdir /opt/backup/`date "+%Y%m%d"`
    cp -p /etc/init.d/postgresql-9.4 /opt/backup/`date "+%Y%m%d"`/
    

    [CentOS7, RHEL7, ORACLE Linux 7]

    注釈

    postgresqlサービスファイルを直接変更しないためバックアップは不要です

  6. postgresqlサービスの$PGDATA参照先を変更

    ※rootユーザ

    [CentOS6, RHEL6, ORACLE Linux 6]

    vi /etc/init.d/postgresql-9.4
    --->"PGDATA=/XXXXX/data"の「/XXXXX/data」を移動先に上書きで変更する
    grep PGDATA /etc/init.d/postgresql-9.4
    --->変更されたことを確認する
    

    [CentOS7, RHEL7, ORACLE Linux 7]

    注釈

    /usr/lib/systemd/system/postgresql-9.4.serviceは直接編集しません

    cp -p /usr/lib/systemd/system/postgresql-9.4.service /etc/systemd/system/.
    vi /etc/systemd/system/postgresql-9.4.service
    --->"Environment=PGDATA=XXXXX/data"の「XXXXX/data」を移動先に上書きで変更する
    grep PGDATA /etc/systemd/system/postgresql-9.4.service
    --->変更されたことを確認する
    
  7. $PGDATAの環境変数の変更

    ※postgresユーザ

    [CentOS6, RHEL6, ORACLE Linux 6]

    # 新規作成
    vi /var/lib/pgsql/.pgsql_profile
    # 下記を追加
    PGDATA=<移動した$PGDATA>
    export PGDATA
    # 読込み
    source /var/lib/pgsql/.pgsql_profile
    echo  $PGDATA
    --->$PGDATAが変更したことを確認
    

    [CentOS7, RHEL7, ORACLE Linux 7]

    vi ~/.bash_profile
    -->"PGDATA=/XXXXX/data" の「XXXXX/data」を移動先に変更する
    source ~/.bash_profile
    echo  $PGDATA
    --->$PGDATAが変更したことを確認
    
  8. 変更したpostgresqlサービスの再構成(RHEL7系の場合のみ)

    ※rootユーザ

    systemctl daemon-reload
    
  9. MaxGaugeサーバのプロセスを起動する

    ※rootユーザ

    [CentOS6, RHEL6, ORACLE Linux 6]

    service postgresql-9.4 start
    service mfo-dg-master start
    service mfo-dg-slave1 start
    service mfo-platformjs start
    

    [CentOS7, RHEL7, ORACLE Linux 7]

    emctl start postgresql-9.4
    systemctl start mfo-dg-master
    systemctl start mfo-dg-slave1
    systemctl start mfo-platformjs
    
  10. MaxGauge画面を確認する

    • Real-time Monitorが正常に表示されることを確認する(通常の動作確認)

    • PerformanceAnalyzerの[推移画面]-[性能トレンド]で過去データが検索できることを確認する

    • 15分後に、PerformanceAnalyzerの[推移画面]-[性能トレンド]でデータが検索できることを確認する