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;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?