centos7离线安装postgres

官网下载源码包

https://www.postgresql.org/ftp/source/v12.10/

postgresql-12.10.tar.gz 上传到/usr/local目录

tar -zxvf postgresql-12.10.tar.gz 解压文件

cd postgresql-12.10

依次执行如下命令

 ./configure

 make

sudo make install

如果执行中报如下错误

则需要安装readline的依赖(可以通过阿里巴巴的rpm下载)

https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/

 

readline-6.2-11.el7.x86_64.rpm

readline-devel-6.2-11.el7.x86_64.rpm

上传到/usr/local/readline目录

然后进入/usr/local/readline执行命令

rpm -Uvh  *.rpm  --nodeps  --force

sudo groupadd postgres

sudo useradd -g postgres postgres

sudo passwd postgres

这里创建账号 postgres/postgres

sudo mkdir -p /usr/local/pgsql/data

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

sudo chown postgres:postgres /var/log

sudo -u postgres /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

sudo vi /etc/systemd/system/postgresql-12.service

 

[Unit]
Description=PostgreSQL 12 database server
Documentation=https://www.postgresql.org/docs/12/static/
After=network.target

[Service]
Type=forking
User=postgres
ExecStart=/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l /var/log/postgresql.log
ExecStop=/usr/local/pgsql/bin/pg_ctl stop -D /usr/local/pgsql/data -l /var/log/postgresql.log
ExecReload=/usr/local/pgsql/bin/pg_ctl reload -D /usr/local/pgsql/data
# Give a reasonable amount of time for the server to start up/shut down
TimeoutSec=300

[Install]
WantedBy=default.target

 

  

sudo systemctl daemon-reload

sudo systemctl start postgresql-12.service

sudo systemctl enable postgresql-12.service

 

开启远程访问

 

修改文件 /usr/local/pgsql/data/postgresql.conf

/usr/local/pgsql/data/pg_hba.conf

 

然后执行如下命令重启postgres

sudo systemctl stop postgresql-12.service

sudo systemctl start postgresql-12.service

使用navicat连接上数据库后,执行如下命令修改账号postgres的密码

ALTER USER postgres WITH PASSWORD 'postgres';

然后将pg_hba.conf文件里面的

host  all  all  0.0.0.0/0  trust

改成

host  all  all  0.0.0.0/0 md5

然后重启postgres服务

其他说明

登录postgres

sudo -u postgres /usr/local/pgsql/bin/psql

然后可以直接输入命令修改postgres账号的密码

\q 退出postgres

卸载安装的postgres

先停止数据库

sudo rm /etc/systemd/system/postgresql-12.service

sudo systemctl daemon-reload

 

删除安装目录:

sudo rm -rf /usr/local/postgresql-12.10

删除数据目录:

sudo rm -rf /usr/local/pgsql

 

删除用户和用户组

sudo userdel -r postgres

sudo groupdel postgres

 

posted on 2023-08-17 13:56  james-roger  阅读(502)  评论(0编辑  收藏  举报