玖叶教程网

前端编程开发入门

Postgresql12源码安装

准备工作

系统版本: CentOS Linux release 7.4.1708 (Core)

数据库版本:psql (PostgreSQL) 12.6

1.创建用户

useradd postgres

passwd postgres

安装依赖包(配置本地yum源)

yum groupinstall -y "Development Tools" "Legacy UNIX Compatibility"

yum install -y bison flex readline* zlib-devel gcc* gmake

创建数据库安装目录并授权

mkdir -p /usr/local/pg12

mkdir -p /pgdata/12/data

chown -R postgres. /pgdata

chown -R postgres. /usr/local/pg12

chmod 700 /pgdata/12/data -R

mkdir -p /postgresql/bin ------base路径

mkdir -p /postgresql/pgsql_data ------data路径

chown -R postgres. /postgresql

chown -R postgres. /postgresql/bin

chmod 700 /postgresql/pgsql_data -R

修改系统参数

vi /etc/sysctl.conf

kernel.shmmax = 68719476736

kernel.shmall = 4294967296

kernel.shmmni = 4096

kernel.sem = 50100 64128000 50100 1280

fs.file-max = 7672460

net.core.rmem_default = 1048576

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

system -p

vi /etc/security/limits.conf

soft nofile 131072

hard nofile 131072

soft nproc 131072

hard nproc 131072

soft stack unlimited

hard stack unlimited

hard memlock 50000000

soft memlock 50000000

源码安装

1.上传安装包并解压

tar -xf postgresql-12.6.tar.gz

2.源码安装pg

cd postgresql-12.6

./configure --prefix=/usr/local/pg12 --with-pgport=1921

3.可用功能编译

gmake world

4.把所有编译好的进行安装

gmake install -world

5.设置环境变量

cd ~/.bash_profile

vi .bash_profile

export PGDATA=/pgdata/12/data

export LANG=en_US.utf8

export PGHOME=usr/local/pg12

export

export PGUSER=postgres

export PATH=$PGHOME/bin:$PATH

生效

source ~/.bash_profile

进入脚本路径

cd /usr/local/pg12/bin

./psql --version

6.初始化数据库

cd /usr/postgresql-12.6/src/bin/initdb

initdb -A md5 -D $PGDATA -E utf8 --locale=C -W

-A 加密方式 -D 路径 -E 字符集 --local=C

进入二进制文件路径启动数据库(两种启动方式,任意选一个

pg_ctl -D /postgresql/pgsql_data -l logfile start

pg_ctl start

进入到数据库

Psql

测试

create database test;

\c test

create table test1 (id int);

将pg数据库为开机自启动

使用pg源码自带的启动脚本来实现自启动功能
在源码包的/contrib/start-scripts/ 中的Linux脚本

进入到postgre自带linux路径

复制文件+赋权

cp linux /etc/init.d/postgresql

chmod a+x /etc/init.d/postgresql

修改复制后的postgresql文件

vi /etc/init.d/postgresql

prefix=/usr/local/pg12/ ------启动二进制文件所在路径

测试使用服务启动数据库

关闭

service postgresql stop

启动

service postgresql start

设置开机自启动

chkconfig --add postgresql

chkconfig --list postgresql

重启服务器测试

reboot(生产环境请注意)

su - postgres

ps -ef |grep postgres

配置远程连接

PS:刚装完的PG,默认只监听local,如果要远程连接,需要监听对外提供服务的地址。

vim postgresql.conf -主配置文件-初始化配置文件oracle

listen_addresses= '0.0.0.0' #what IP address(es) to listen on;

listen_addresses = '0,0,0,0' #what IP address(es) to listen on;

vi pg_hba.conf

修改上面两个文件后重启数据库

pg_ctl restart -mf

PG启动关闭

-m, --mode=MODE MODE can be "smart", "fast", or "immediate"

smart

最安全最干净的关闭方法,等事务全部完成。

fast

应用最多,快速关闭,回滚事务(生产常见)

Immediate

立即关闭

手工启动关闭

pg_ctl -D /pgdata/12/data/ -l logfile start

pg_ctl -D /pgdata/12/data/ stop -ms

pg_ctl -D /pgdata/12/data/ stop -mf

pg_ctl -D /pgdata/12/data/ stop -mi

pg_ctl stop -mf (标准的关闭方式)

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言