🐤

Oracle Cloud: ArmインスタンスでPostgreSQLをビルド

2021/06/06に公開

Oracle Cloud Free TierのArmインスタンスで、PostgreSQLをビルドしてみた
環境

Shape: VM.Standard.A1.Flex (CPU: Neoverse-N1)
OCPU: 4
メモリ: 24 GB
OS: Oracle Linux 8

事前準備

sudo groupadd -g 2000 pgsql
sudo useradd -g 2000 -u 2000 -d /home/pgsql pgsql
sudo dnf install git
sudo dnf install readline-devel
sudo dnf install flex bison
sudo dnf install gettext-devel
sudo dnf install openssl-devel
sudo dnf install gdb

以下はpgsqlユーザで実施
ソースの取得

mkdir src
git clone git://git.postgresql.org/git/postgresql.git
cd postgresql/
git checkout -b REL_13_3_b REL_13_3
cd ..

環境設定
vi .bashrcで以下を設定。設定したらsource .bashrcで反映

# for postgresql
export PGHOME=$HOME/pgsql
export PGDATA=$PGHOME/data
export PGLIB=$PGHOME/lib
export PATH=$PATH:$PGHOME/bin
export PGSETUP_INITDB_OPTIONS="--encoding=UTF-8 --no-locale"

ビルド

mkdir -p ~/src/build
cd ~/src/build
mkdir build_13_3_O2
cd build_13_3_O2
../../postgresql/configure --prefix=$HOME/pgsql --with-openssl --enable-nls=UTF_JP
date; time make -j4 > make.log 2>&1; date

makeの実行時間

real    1m7.883s
user    3m23.827s
sys     0m9.348s

1分強でビルドできた。
Oracle CloudのVM.Standard.E2.1.Micro (CPU: AMD EPYC 7551, OCPU:1, メモリ:1GB)では12分以上かかっていたので、かなり速い。

Discussion