1 进入postresql官网下载页面,提示了centos相关下载安装等信息。
https://www.postgresql.org/download/linux/redhat/
image.png
2 连接到centos7服务器
image.png
3 根据官网提示在命令行中下载安装
yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm
image.png
yum install postgresql11
yum install postgresql11-server
附带安装
yum install postgresql11-libs
yum install postgresql11-contrib
yum install postgresql11-devel
4 数据库初始化与设置自启动
/usr/pgsql-11/bin/postgresql-11-setup initdb
systemctl enable postgresql-11
systemctl start postgresql-11
image.png
这一步初始化数据库命令会在 /var/lib/pgsql 目录下创建名称为11文件夹,11为数据库版本,如果安装的是其他版本,对应的是其版本号(9.4、9.5);这里如果已经有对应版本的文件夹了,初始化这一步会报错,需要你自行去删除对应的文件夹,再去初始化。
5 默认会创建一个名为postgres的linux登录用户,这里进行密码修改
(注意,这里修改的是linux登陆的账号密码,不是数据库的)
passwd postgres
image.png
6 编辑一些远程连接信息,让所有计算机能访问到该测试数据库
6.1 对postgresql.conf文件进行编辑
cd var/lib/pgsql/11/data
vim postgresql.conf
修改前:
image.png
输入a进入插入编辑模式,对该文件进行编辑;
去掉#,修改localhost为*
修改后如下,按下esc退出插入编辑模式,并输入:wq保存退出
image.png
6.2同样目录下,对pg_hba.conf文件进行编辑
vim pg_hba.conf
修改前:
image.png
输入a进入插入编辑模式,对该文件进行编辑
修改后如下,按下esc退出插入编辑模式,并输入:wq保存退出
image.png
7 重新启动服务
systemctl restart postgresql-11
8 用postgres账号登录centos服务器,并修改数据库用户密码(或者直接 su postgres 切换过去)
ssh postgres@ip -p 端口
---------------------------------------------博主补充修改部分---------------------------------
博主按原博主的教程走到上面这一步的时候就报错了,实际情况是已经正常安装,由于CENTOS系统的端口是要自己开放的,所以需要自己开放端口5432
添加指定需要开放的端口:
firewall-cmd --add-port=5432/tcp --permanent
重载入添加的端口:
firewall-cmd --reload
查看开放所有端口
firewall-cmd --list-port
检查是否正常安装
OK
也可以查询版本号看看是否成功安装
select version();
附带密码修改教程
linux shell命令下面输入: sudo -u postgres psql (这样就可以直接登录进postgres 了, 然后在里面可以进行添加用户,修改密码之类的,都不是问题了!!)
-----------------------------------------------------------------------------------------------------------------
修改PostgreSQL数据库的默认用户postgres的密码(注意不是linux系统帐号)
第一步:1、PostgreSQL登录(使用psql客户端登录)
# sudo -u postgres psql
//其中,sudo -u postgres 是使用postgres 用户登录的意思
//PostgreSQL数据默认会创建一个postgres的数据库用户作为数据库的管理员,密码是随机的,所以这里
//设定为'postgres'
2.修改PostgreSQL登录密码:
postgres=# ALTER USER postgres WITH PASSWORD 'postgres';
//postgres=#为PostgreSQL下的命令提示符
3.退出PostgreSQL psql客户端
postgres=# \q
[代码说明]
‘#’和’#'之前的字符是系统提示符,’postgres=#’是psql客户端的提示符,红色字符为输入命令(本文其它部分亦如此);
[功能说明]
PostgreSQL数据默认会创建一个postgres的数据库用户作为数据库的管理员,密码是随机的,我人需要修改为指定的密码,这里设定为’postgres’
第二步:修改linux系统的postgres用户的密码(密码与数据库用户postgres的密码相同)
1.删除PostgreSQL用户密码
# sudo passwd -d postgres
passwd: password expiry information changed.
//passwd -d 是清空指定用户密码的意思
2.设置PostgreSQL用户密码
PostgreSQL数据默认会创建一个linux用户postgres,通过上面的代码修改密码为'postgres’(这取决于
第二步中的密码,只要与其相同即可)。
现在,我们就可以在数据库服务器上用 postgres帐号通过psql或者pgAdmin等等客户端操作数据库了。
#sudo -u postgres passwd
输入新的 UNIX 密码:
重新输入新的 UNIX 密码:
passwd:已成功更新密码
----------------------------------------------------------------分割线----------------------------------------------------------------------
---------------------------------------------博主补充修改部分---------------------------------
psql -U postgres
\password
image.png
查看版本
image.png
9 在数据库客户端测试登录
image.png
10 备用卸载
yum remove postgresql*
前人经验参考
https://www.jianshu.com/p/3f8d77d258d8
https://www.jianshu.com/p/639ebb43bfb4
https://www.cnblogs.com/freeweb/p/8006639.html
http://www.postgresonline.com/article_pfriendly/362.html
https://www.cnblogs.com/yanmiao/p/3262306.html
作者:gis杭州
链接:https://www.jianshu.com/p/b4a759c2208f
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。