PostgresSQL安装教程
一、下载安装
二、启动运行
三、设置密码和远程链接
四、卸载postgresSql
一、下载安装
首先官网先选择对应的操作系统 https://www.postgresql.org/download/
然后选择对应的pg库版本,现在最新版为14,为了稳定起见我们选择了12
useradd postgres
groupadd postgres
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql12-server
sudo yum install -y postgresql-devel
这个命令可能要等待一小会,会出现很多的Another app is currently holding the yum lock; waiting for it to exit… 一定不要退出!!!!切记
出现下面这样就是安装成功了。postgresSql默认端口是5432。
二、启动运行
现在是没有启动的状态,我们分别执行:
sudo /usr/pgsql-12/bin/postgresql-12-setup initdb
sudo systemctl enable postgresql-12
sudo systemctl start postgresql-12
执行sudo /usr/pgsql-12/bin/postgresql-12-setup initdb可能会遇到这个问题:
initdb: 错误: 无法访问目录 “/var/lib/pgsql/12/data”: 权限不够
cd /var/lib/
chown -R postgres:postgres pgsql
一定要按照上面的操作命令去执行,少一步都会报错。
三、设置密码和远程链接
设置密码:
[root@localhost lib]# sudo passwd postgres
查看postgres相关用户:
[root@localhost lib]# su postgres
[postgres@localhost lib]$ psql
postgres-# \l
在CentOS上,默认的PostgreSQL数据目录是/var/lib/pgsql/版本号/data
navicate远程的时候宝这个错误,链接不上,所以我们还要修改一下postgresql的配置文件:
could not connect to server: Connection refused (0x0000274D/10061) Is the server running on host"localhost" (:1) and acceptingTCP/IP connections on port 5433 ?
设置允许其他IP访问:
修改该配置文件中的参数,必须重启 postgreSql服务,若要允许其它IP地址访问 该主机数据库,则必须修改
postgresql.conf 中的参数 listen_addresses 为 * 重启:systemctl restart postgresql-12.service 或者 pg_ctl reload 或者 执行SELECT pg_reload_conf()
但是我们为了安全性一般都不会上面的设置,上面的配置只是校验了用户名,并没有校验密码,不输入密码也能链接数据库。一般远程链接都需要密码才行。下面配置是每次远程连接时首先校验密码:
vim pg_hba.conf
然后重启,远程连接:
systemctl restart postgresql-12.service
如果遇到远程连接时报了如下错误:
postgresql 口令: psql: 致命错误: 用户 认证失败
psql :致命错误:用户postgres Password 认证失败
不要慌,首先登录pg库,改成你像设置的密码就可以了:
sudo -u postgres psql
ALTER USER postgres WITH PASSWORD 'postgres';
3.1安装 uuid-ossp 插件
准备文件:
链接:https://pan.baidu.com/s/1xmUCDSJ2TPT17FuzhdMfog
提取码:y1qj
- 将 uuid-ossp.so 文件放在 /usr/pgsql-12/lib 目录下,并赋予执行权限
- 将 其他文件放在 /usr/pgsql-12/share/extension 目录下
3.重启 postgresql 服务
4. 安装 uuid-oss 插件即可
create extension IF NOT EXISTS "uuid-ossp";
3.2安装pg_poathman
1、安装git
yum -y install git
2、下载pg_pthamn
国外网站多试几次才能成功
git clone https://github.com/postgrespro/pg_pathman
3、设置环境变量
export PATH=/home/digoal/pgsql9.6:$PATH
4、安装pg_pathman
cd pg_pathman
make USE_PGXS=1
make USE_PGXS=1 install
5、修改PostgreSQL配置文件
cd $PGDATA
vi postgresql.conf
shared_preload_libraries = ‘pg_stat_statements,pg_pathman’
6、重启数据库
7、进入数据库启动插件
psql
create extension pg_pathman;
8、查看插件是否生效
\dx
四、卸载postgresSql
一、首先执行以下命令:
[root@localhost ~]# rpm -qa | grep postgresql
postgresql12-libs-12.9-1PGDG.rhel7.x86_64
postgresql-server-9.2.24-4.el7_8.x86_64
postgresql12-server-12.9-1PGDG.rhel7.x86_64
postgresql-9.2.24-4.el7_8.x86_64
postgresql12-12.9-1PGDG.rhel7.x86_64
postgresql-libs-9.2.24-4.el7_8.x86_64
[root@localhost ~]# yum remove postgresql12-libs-12.9-1PGDG.rhel7.x86_64
二、删除服务管理脚本
rm -f /etc/init.d/postgresql-12
————————————————
版权声明:本文为CSDN博主「唐山大兄dei」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42103983/article/details/121760500