这里以CentOS为例:
# 解压到指定的目录
tar -zxvf postgresql-12.8.tar.gz -C /home/laufing
cd postgresql-12.8
# 创建目录
mkdir /usr/local/pgsql # root 用户
# 安装依赖
yum install -y gcc readline-devel zlib-devel
# 配置
./configure --prefix=/usr/local/pgsql # 配置安装目录
# 并行编译
make -j8
# 安装
make install
#PostgreSQL installation complete.
# root 用户配置/etc/profile
# 一般用户配置 .bashrc
export PATH=/usr/local/pgsql/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/pgsql/lib:$LD_LIBRARY_PATH
source /etc/profile 使文件生效
# 添加一个普通用户
# -d 指定家目录 -m 自动创建家目录
# -g 组
# -s 使用的shell
useradd jack -d /home/jack -m -g root -s /bin/bash
# 设置密码
passwd jack
xxxxx
# 更改pgsql所属用户
chown -R jack:root /usr/local/pgsql
# 从root切换到普通用户
su - jack
# 初始化db,初始化完成会生成配置文件等
mkdir /home/jack/pgsql/data
initdb -D /home/jack/pgsql/data
# 配置
vim data/postgresql.conf
listen_addresses = "*"
port = 5432
bytea = "escape"
vim postgresql_hba.conf
# 添加
host all all 0.0.0.0/0 md5
pg_ctl -D /home/laufing/pgsql/data -l logfile start
# stop or restart
# 连接 postgres 数据库
psql -U jack -d postgres
# 创建管理账户
create user dba password 'dba' superuser createrole createdb;
grant jack to dba;
# 创建普通用户
create user lauf with password 'lauf';
create database test owner lauf;
grant all privileges on database test to lauf;
#
\l 查看所有的库
\d 查看当前库所有的表
\d stu_t 查看表结构
\q 退出
exit 退出
使用navicat 连接postgresql数据库, 源码安装完成。
