1、环境
oracle linux 7.5
postgresql-13.4 https://www.postgresql.org/
2、安装gcc编辑器用于编译源码
# gcc --version
3、安装make,用于批量编译链接源码,实际干活的还是gcc
# make --version
4、安装 readline 可以选择不安装 readline,不安装想用方向键再次获取该命令时就会成乱码
yum install readline readline-devel
5、安装zlib-devel 一般情况下,系统已经默认安装了zlib用于数据压缩
yum install zlib zlib-devel
6、编译安装
mkdir /postgresql/postgresql-13.4
tar -xzvf postgresql-11.4.tar.gz
-- 生成 makefile
./configure --prefix=/postgresql/postgresql-13.4 --enable-nls=en_US.UTF-8
--without-readline=disable -- 没安装 ReadLine 可以禁用 readline 支持
make && make install
7、安装工具集
cd /postgresql/postgresql-13.4/contrib
make all && make install
8、创建postgres用户,创建数据存储目录:
groupadd postgres
useradd -g postgres postgres
mkdir -p /postgresql/data
chown postgres.postgres -R /postgresql/
为了安全考虑,postgresql不允许使用root用户操作数据库,这里创建postgres用户作为数据库的超级用户。初始化数据库时,就以这个用户作为数据库的超级用户
9、修改环境变量
su - postgres
vi .bash_profile
export PGDATA=/postgresql/data
export PGHOME=/usr/local/pgsql/
export MANPATH=$PGHOME/share/man:$MANPATH
export LANG=en_US.utf8
export DATE=`date +"%Y-%m-%d %H:%M:%S"`
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PGHOME/lib
export PATH=$PATH:$PGHOME/bin/
10、初始化并启动数据库
su - postgres
./initdb -D /postgresql/data/
./pg_ctl -D /postgresql/data/ -l logfile start
11、查看5432端口是否已经启动
netstat -nltp|grep 5432
添加postgresql至服务,设置服务开机启动,这里由于home目录没有在usr/local/pgsql/等默认目录,需要注意修改 start-scripts 下linux文件对应的目录位置
cd /postgresql/postgresql-13.4/contrib/start-scripts
chmod a+x linux
cp linux /etc/init.d/postgresql
/etc/init.d/postgresql stop
service postgresql start
chkconfig --add postgresql
11、配置数据库允许连接,设置监听整个网络,查找“listen_addresses”字符串,
vim /postgresql/data/postgresql.conf
listen_addresses = '*'
配置连接方式:
vim /postgresql/data/pg_hba.conf
host all all 192.168.142.0/24 md5