linux 源码安装postgresql

下载源码包

--安装所需要的系统软件包
yum groupinstall -y "Development tools"
yum install -y bison flex readline-devel zlib-devel

官网下载:https://www.postgresql.org/ftp/source/

tar -zxvf postgresql-11.3.tar.gz

cd postgresql-11.3

#查看帮助指令  ./configure --help

./configure --prefix=/usr/local/pgsql --with-libxml

make && make install

配置环境

#创建用户

useradd postgres

passwd postgres

#输入密码验证

#设置权限

chown -R postgres:postgres /usr/local/pgsql

mkdir /data/pg mkdir  /data/pg/logs #存储数据和日志

chown -R postgres:postgres /data/pg

# 配置环境

vi /etc/profile

export PGDATA=/data/pg/data
export PGHOME=/usr/local/pgsql
export PATH=$PGHOME/bin:$PATH

source /etc/profile  #生效

su postgres #切换用户

配置postgres用户的.bash_profile


PATH=/usr/local/pgsql/bin:$PATH:$HOME/bin

export PATH

export LD_LIBRARY_PATH=/usr/local/pgsql/lib

export PGDATA=/data/pg/data

初始化数据库

执行initdb命令   (/usr/local/pgsql/bin/pg_ctl init --pgdata=/data/pg/data)

启动数据库

pg_ctl -D /data/pg/data -l /data/pg/logs/pg_server.log start

后面的log日志需手动创建,如下图,证明数据库启动成功:

连接数据库

连接数据库可以使用如下命令

psql -U postgres -d postgres

# 配置数据库连接信息

cd /data/pg/data

vim postgresql.conf

如上图,将listen_addresses的值设置成*,使其监听整个网络,端口号默认是5432,也可以自己设置。

vim pg_hba.conf

客户端认证配置文件

如上图

TYPE:pg的连接方式,local:本地unix套接字,host:tcp/ip连接

DATABASE:指定数据库

USER:指定数据库用户

ADDRESS:ip地址,可以定义某台主机或某个网段,32代表检查整个ip地址,相当于固定的ip,24代表只检查前三位,最后一                         位是0~255之间的任何一个

METHOD:认证方式,常用的有ident,md5,password,trust,reject。

                   md5是常用的密码认证方式。

                   password是以明文密码传送给数据库,建议不要在生产环境中使用。

                   trust是只要知道数据库用户名就能登录,建议不要在生产环境中使用。

                   reject是拒绝认证。



 启动postgresql服务

service postgresql start

查看端口

netstat -tunlp

创建用户

postgres=# create user postuser1 with password 'user1@123';

创建数据库

#同时指定数据库的所有者
postgres=# create database postdb1 owner postuser1;

数据库赋权

#未赋权则账户只能登录控制台
postgres=# grant all privileges on database postdb1 to postuser1;



# 导入导出命令

导入sql

psql -d [表] -U [数据库] -h [ip] -p [端口] -f [文件]

pg_restore -U postgres -d poi > filename

导出sql

pg_dump -U [数据库] -h [ip] -p [端口] -t [表] > 导出的文件

原文地址:https://www.cnblogs.com/awakenedy/p/10905412.html