PostgreSQLのバージョンアップ » 履歴 » バージョン 2
白林檎 美和, 2021/09/23 23:07
1 | 1 | 白林檎 美和 | # PostgreSQLのバージョンアップ |
---|---|---|---|
2 | |||
3 | 1. 現バージョンを停止,バックアップ,削除。 |
||
4 | |||
5 | ``` |
||
6 | # service postgresql stop |
||
7 | $ pkg create postgresql<現>-server postgresql<現>-contrib |
||
8 | $ mkdir /tmp/pg-upgrade |
||
9 | $ tar xvf postgresql<現>-server-<バージョン番号>.txz -C /tmp/pg-upgrade |
||
10 | $ tar xvf postgresql<現>-contrib-<バージョン番号>.txz -C /tmp/pg-upgrade |
||
11 | # pkg delete -f postgresql<現>-server postgresql<現>-contrib postgresql<現>-client |
||
12 | ``` |
||
13 | 1. 新バージョンをインストール。 |
||
14 | ``` |
||
15 | # make -C /usr/ports/databases/postgresql<新>-server config-recursive |
||
16 | # make -C /usr/ports/databases/postgresql<新>-server install clean |
||
17 | # make -C /usr/ports/databases/postgresql<新>-contrib config-recursive |
||
18 | # make -C /usr/ports/databases/postgresql<新>-contrib install clean |
||
19 | ``` |
||
20 | 1. データを移行。*データ置場* は,デフォルトだと `/var/db/postgres`。 |
||
21 | ``` |
||
22 | $ su -l postgres -c "/usr/local/bin/initdb --encoding=utf-8 --lc-collate=C -D <データ置場>/data<新> -U postgres" |
||
23 | $ su -l postgres -c "pg_upgrade -b /tmp/pg-upgrade/usr/local/bin -d <データ置場>/data<旧> -B /usr/local/bin -D <データ置場>/data<新> -U postgres" |
||
24 | ``` |
||
25 | 1. 新バージョンを起動。 |
||
26 | ``` |
||
27 | # service postgresql start |
||
28 | ``` |
||
29 | 2 | 白林檎 美和 | 1. 新バージョンが走っているのを確かめ,バックアップした旧バージョンを削除。 |
30 | ``` |
||
31 | # service postgresql status |
||
32 | pg_ctl: server is running (PID: <プロセス番号>) |
||
33 | /usr/local/bin/postgres "-D" "<データ置場>/data<新>" |
||
34 | $ rm -fr /tmp/pg-upgrade postgresql<旧>-server-<バージョン番号>.txz postgresql<旧>-contrib-<バージョン番号>.txz |
||
35 | ``` |
||
36 | 1 | 白林檎 美和 | 1. postgresqlに依存するぱっけぇぢを,再インストール。 |
37 | ``` |
||
38 | # pkg check -dna |
||
39 | Checking all packages: 100% |
||
40 | rubygem-pg has a missing dependency: postgresql<旧>-client |
||
41 | # portupgrade -f rubygem-pg |
||
42 | ``` |