linux环境下安装postgresql

来源:互联网 发布:oracle 锁表sql 编辑:程序博客网 时间:2024/05/22 09:00

linux环境下安装postgresql

1、创建用户和组

sudo groupadd postgressudo useradd -g postgres postgressudo passwd ygsoftpower

2、解压

tar zxvf postgresql-9.6.3.tar.gzcd postgresql-9.6.3

3、配置

./configure --prefix=/usr/local/postgresql --without-readline(根据文件安装文件路径 ./configure --prefix=/home/ec2-user/postgresql-9.6.3 --without-readline)
A、如果报gcc错误
configure: error: no acceptable C compiler found in $PATH
则安装
yum -y install gcc
B、如果报zlib错误
configure: error: zlib library not found
则安装
sudo yum -y install zlib-devel

4、编译安装

make &&make install

5、安装contrib目录下的一些工具,是第三方组织的一些工具代码,建议安装

cd contribmake &&make install

6、添加环境变量,并使之生效(初级用户请自行学习设置)

先修改profile

vim /etc/profileexport PG_HOME = /usr/local/postgresqlexport PATH = $PG_HOME/bin:$PATHsource /etc/profile

如果source无法执行,修改base_profile

export PATH=/usr/local/postgresql/bin:$PATH
7、建postgres数据库的目录
mkdir -p /var/postgresql/datachown ec2-user:ec2-user /var/postgresql/* chown ec2-user:ec2-user /usr/local/postgresql/* chmod -R 775 /var/postgresql/*

8、切换用户

su ec2-user

9、初始化数据库

initdb -D /var/postgresql/data

10、启动服务

pg_ctl -D /var/postgresql/data -l /var/postgresql/logfile start
如果出现问题:
pg_ctl: error while loading shared libraries: libpq.so.5: cannot open shared object file: No such file or directory
解决 :
sudo ln -s /home/ec2-user/postgresql-9.6.3/lib/libpq.so.5 /usr/lib/libpq.so.5sudo ln -s /home/ec2-user/postgresql-9.6.3/lib/libpq.so.5 /usr/lib64/libpq.so.5

11、创建ROLE,否则报FATAL: role “postgres” does not exist

CREATE USER postgres SUPERUSER;

12、修改PostgresSQL数据库配置实现远程访问

修改postgresql.conf文件
vi /var/postgresql/data/postgresql.conf

13、允许远程连接

A、修改客户端认证配置文件pg_hba.conf,将需要远程访问数据库的IP地址或地址段加入该文件
vi /var/postgresql/data/pg_hba.conf
B、在文件的最下方加上下面的这句话
host    all    all    0.0.0.0/0     trust
C、设置监听整个网络,查找“listen_addresses ”字符串,
vi /var/postgresql/data/postgresql.conf
D、修改为如下:
listen_addresses = ‘*'
E、重启服务
supostgrespg_ctl -D /var/postgresql/data -l /var/postgresql/logfile restart
F、停止服务
pg_ctl -D /var/postgresql/data -l /var/postgresql/logfile stop
G、直接启动服务
pg_ctl start
H、检查状态
pg_ctl status -D /var/postgresql/data
I、客户端登录

这里写图片描述

原创粉丝点击