UP | HOME

安装 postgres 数据库

Table of Contents

1 Linux 平台编译安装的快捷参考(Centos 平台):

1.1 下载源代码

wget https://ftp.postgresql.org/pub/source/v12.2/postgresql-12.2.tar.bz2

1.2 解压编译安装

这里将数据库相关软件安装到 /usr/local/pgsql 文件夹中

tar xjvf postgresql*.bz2
cd potgresql-12.2
./configure --prefix=/usr/local/pgsql
make world
make install-world

1.3 添加用户和相关配置

为 postgres 数据创建管理用户,并初始化数据库的存储目录

# 增加新用户,系统提示要给定新用户密码
adduser postgres

# 创建数据库目录
mkdir /usr/local/pgsql/data
chown -R postgres:postgres /usr/local/pgsql/data

并初始化数据库

su - postgres # 使用 postgres 帐号操作
/usr/local/pgsql/bin/initdb -E UTF8 -D /usr/local/pgsql/data # 初始化数据库
/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start # 启动数据库
/usr/local/pgsql/bin/createuser -d user01 # 假定用户名为 user01
/usr/local/pgsql/bin/createdb -E UTF8 -o user01 db01 # 假定数据库名为 db01, 指定用户所有者为 user01
/usr/local/pgsql/bin/psql -U user01 db01 # 进入数据库内部

获取使用 SQL 语句来创建用户和数据库也是可行的

CREATE ROLE user01 NOSUPERUSER CREATEDB NOCREATEROLE INHERIT LOGIN;

CREATE DATABASE db01 OWNER user01 ENCODING 'UTF8';

2 配置相关的环境变量

# basic envs
export PGHOME=/usr/local/pgsql
export PGDATA=/usr/local/pgsql/data
export PATH=$PGHOME/bin:$PATH
# user and port
export PGUSER=postgres
export PGPORT=5432

# alias
alias cdph="cd $PGHOME"
alias p0="$PGHOME/bin/pg_ctl stop"
alias p1="$PGHOME/bin/pg_ctl -D $PGDATA -l $PGDATA/logfile start"

3 配置允许远程连接数据库

postgres 默认只能通过 localhost 连接,如果需要建立远程连接则需要进行配置。找到 postgres 配置文件所在目录,这里位于数据目录 $PGDATA

修改 postgresql.conf: 配置监听任意 IP

listen_addresses = '*'

修改 pg_hba.conf: 配置服务端允许 MD5 认证方式,即使用用户名和密码登录

host all all 0.0.0.0/0 md5

修改过后需要重启才能生效

4 参考链接

Last Updated 2021-05-13 Thu 10:29. Created by Jinghui Hu at 2020-09-06 Sun 08:16.