1-源码安装

1,下载地址

清华源地址下载
官方地址下载
在这里插入图片描述

2,安装编译安装依赖包

yum -y install zlib-devel readline-devel gcc

3, 将下载的tgz包,上传到服务器,并解压

tar -zxvf postgresql-14.1.tar.gz

4, 进入解压包,执行编译安装, 并初始化数据库实例

cd postgresql-14.1
./configure
make
make install
adduser postgres
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data/
su - postgres
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data/ #初始化数据库实例
/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data/ -l logfile start #启动数据库实例,logfile是相对路径
/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data/ -l logfile status #查看数据库实例启动状况

5, 将postgresql设置为系统服务

root 用户下
vim /usr/lib/systemd/system/postgresql.service

[Unit]
#描述
Description=postgresql
#在此服务启动后才启动,这里可以不写
After=network.target

[Service]
#服务的类型,常用的有 simple(默认类型) 和 forking。默认的 simple 类型可以适应于绝大多数的场景,因此一般可以忽略这个参数的配置。
#而如果服务程序启动后会通过 fork 系统调用创建子进程,然后关闭应用程序本身进程的情况,则应该将 Type 的值设置为 forking,
#否则 systemd 将不会跟踪子进程的行为,而认为服务已经退出。 pg需要通过fork来创建一些子进程,所以这里选择forKing
Type=forking
User=postgres
Group=postgres

ExecStart=/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l /home/postgres/logfile   start
ExecStop=/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l /home/postgres/logfile    stop
ExecReload=/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l /home/postgres/logfile  restart

#是否给服务分配独立的临时空间(true/false),要给的
#PrivateTmp=true
#TimeoutSec=300
#Restart=always
#RestartSec=5

[Install]
#和前面的 Wants 作用相似,只是后面列出的不是服务所依赖的模块,而是依赖当前服务的模块。
#“WantedBy=multi-user.target” 表明当系统以多用户方式(默认的运行级别)启动时,这个服务需要被自动运行。
#当然还需要 systemctl enable 激活这个服务以后自动运行才会生效
WantedBy=multi-user.target

systemctl daemon-reload
systemctl start postgresql

[root@localhost postgresql-14.1]# systemctl status  postgresql
● postgresql.service - postgresql
   Loaded: loaded (/usr/lib/systemd/system/postgresql.service; disabled; vendor preset: disabled)
   Active: active (running) since 二 2022-01-18 17:54:10 CST; 5s ago
  Process: 15916 ExecStart=/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l /home/postgres/logfile start (code=exited, status=0/SUCCESS)
 Main PID: 15918 (postgres)
   CGroup: /system.slice/postgresql.service
           ├─15918 /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data
           ├─15920 postgres: checkpointer 
           ├─15921 postgres: background writer 
           ├─15922 postgres: walwriter 
           ├─15923 postgres: autovacuum launcher 
           ├─15924 postgres: stats collector 
           └─15925 postgres: logical replication launcher 

118 17:54:10 localhost.localdomain systemd[1]: Starting postgresql...
118 17:54:10 localhost.localdomain pg_ctl[15916]: pg_ctl: another server might be running; trying to start server anyway
118 17:54:10 localhost.localdomain systemd[1]: Started postgresql.

6,修改配置文件

6-1 postgresql 访问控制的配置文件

vim /usr/local/pgsql/data/pg_hba.conf
IPv4 local connections:
host all all 192.168.11.125/24 trust

6-2 修改监听地址以及监听ip
vim  /usr/local/pgsql/data/postgresql.conf
listen_addresses = '*'     # what IP address(es) to listen on;
                           # defaults to 'localhost'; use '*' for all
port = 5432                # (change requires restart)                           
 

重启服务即可,systemctl restart postgresql

7,用navicat gui连接登录

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值