Postgresql-安装

官网:www.postgresql.org
中文社区:http://www.postgres.cn
学习网站:https://www.runoob.com/postgresql/postgresql-update.html
学习手册:https://www.kancloud.cn/zzgjb/pgsql/76192

1、创建数据库用户和用户组

# useradd postgres
# passwd postgres

2、安装依赖包

# yum groupinstall -y "Development Tools" "Legacy UNIX Compatibility"
# yum install -y bison flex readline* zlib-devel gcc* gmake

3、创建目录并授权

# mkdir -p /usr/local/pg13
# mkdir -p /pgdata/13/data
# chown -R postgres.postgres /pgdata
# chown -R postgres.postgres /usr/local/pg13
# chmod 700 /pgdata/13/data -R

4、系统参数优化

# vim /etc/sysctl.conf
  kernel.shmmax = 68719476736 
  kernel.shmall = 4294967296 
  kernel.shmmni = 4096 
  kernel.sem = 50100 64128000 50100 1280 
  fs.file-max = 7672460 
  net.ipv4.ip_local_port_range = 9000 65000 
  net.core.rmem_default = 1048576 
  net.core.rmem_max = 4194304 
  net.core.wmem_default = 262144 
  net.core.wmem_max = 1048576
# sysctl -p

# vim /etc/security/limits.conf 
  * soft nofile 131072 
  * hard nofile 131072 
  * soft nproc 131072 
  * hard nproc 131072 
  * soft core unlimited 
  * hard core unlimited 
  * soft memlock 50000000 
  * hard memlock 50000000 
建议关闭numa,设置IO策略为deadline(机械)或者noop(SSD)

5、源码安装

# tar xf postgresql-13.6.tar.gz 
# cd postgresql-13.6 
# ./configure --prefix=/usr/local/pg13 --with-pgport=1921 
# gmake world 
# gmake install-world

6、设置环境变量

# su - postgres 
$ vim .bash_profile
  export PGDATA=/pgdata/13/data 
  export LANG=en_US.utf8 
  export PGHOME=/usr/local/pg13 
  export LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib:$LD_LIBRARY_PATH 
  export DATE=`date +"%Y%m%d%H%M"` 
  export PATH=$PGHOME/bin:$PATH:. 
  export MANPATH=$PGHOME/share/man:$MANPATH 
  export PGUSER=postgres
  
$ source .bash_profile 
$ psql --version 
  psql (PostgreSQL) 13.6

7、初始化数据

# su - postgres 
$ initdb -D /pgdata/13/data -W   #简易初始化 
$ initdb -A md5 -D $PGDATA -E utf8 --locale=C -W   #生产建议 
$ pg_ctl -D /pgdata/13/data/ start -l logfile  #启动
$ psql #登录

8、启动关闭

# pg_ctl -D /pgdata/13/data/ -l logfile start  #启动
# pg_ctl -D /pgdata/13/data/ restart -mf       #重启
# pg_ctl -D /pgdata/13/data/ -l logfile reload #重新加载配置文件
# pg_ctl -D /pgdata/13/data/ stop -ms  #关闭的非常慢,要等所有连接都释放了以后才关闭
# pg_ctl -D /pgdata/13/data/ stop -mf  #会自动断开所有连接,生产常用
# pg_ctl -D /pgdata/13/data/ stop -mi  #立即关闭,相当于kill -9 
-D  #数据库存储区域的位置
-l  #将服务器日志写入(或追加)到FILENAME

9、配置远程连接

刚安装完成的PG,默认只能本地连接
需要修改配置文件 pg_hba.conf 和 postgresql.conf ,才可以远程连接
$ vim pg_hba.conf
# TYPE  DATABASE   USER   ADDRESS       METHOD 
  host    all      all   10.0.0.1/32    md5 
# TYPE  DATABASE   USER   ADDRESS       METHOD 
  host    all      all   0.0.0.0/0      md5 

$ vim postgresql.conf
listen_addresses = '0.0.0.0'   # what IP address(es) to listen on;
posted @   Enzo_Ocean  阅读(87)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示