Centos环境下Postgresql 安装配置及环境变量配置技巧


Posted in PostgreSQL onMay 18, 2021

1、yum安装

进去postgresql官网下载界面 PostgreSQL: Downloads

选择操作系统

选择系统版本,平台信息等 会出现具体的安装步骤

Centos环境下Postgresql 安装配置及环境变量配置技巧

拷贝脚本,自动执行并创建了数据库实例

上面的创建数据库实例
sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
允许开机自启动postgresql数据库
sudo systemctl enable postgresql-13
操作系统的服务管理命令启动数据库
sudo systemctl start postgresql-13
停止数据库命令
sudo systemctl stop postgresql-13
查看数据库状态命令
sudo systemctl status postgresql-13

可选 安装contrib包,contrib包中包含了一些插件和工具 yum install postgresql12-contrib

切换用户为postgres su - postgres

连接数据库 psql推出数据库 \q

2、从源码安装(推荐)

1、https://www.postgresql.org/download/ 在官方下载界面,点击左侧的Source 进入源代码下载界面

2、选择合适的版本

3、选择合适的压缩包下载,一般来说bz2 格式的压缩包体积较小

3、编译以及安装

4、解压安装包

tar -xvf postgresql-13.tar.gz

5、进入目录

cd postgresql-13

6、编译安装命令

./configure --prefix=/usr/local/pgsql13 --with-perl --with-python
make
make install
 
命令解析
--prefix=/usr/local/pgsq13 确定其安装目录
--with-perl 加上改选项可以使用perl语法的PL/Perl 过程语言来编写自定义函数。使用该选项需要先安装perl包,在ubantu或者Debian下名称为libperl-dev
 
--with-python 加上改选项可以使用python语法的Py/Python 过程语言来编写自定义函数。使用该选项需要先安装python-devk开发包。

 7、创建用户组和用户

groupadd postgres
useradd -g postgres postgres

8、建立链接

cd /usr/local
sudo ln -sf /usr/local/pgsql13 /usr/local/pgsql
 
命令解析
之前--prefix设置的路径为/usr/local/pgsql13 如果不设置路径,默认的路径为 /usr/local/
创建路径的的时候加上了版本号,为了以后方便升级
如果要升级到更高版本的数据库,只需要停掉现在的数据库,在编译更高版本的数据库postgreslq14 后,将链接 /usr/local/pgsql 指向新版本的目录 /usr/local/pgsql14 即可完成升级

9、创建数据库库文件存储目录、给postgres赋予权限

mkdir /usr/local/pgsql/data
cd /usr/local/
chown postgres.postgres pgsql

10、 初始化数据库目录:

切换用户
 
su - postgresql
 
初始化数据 -D指定初始化创建的数据库的文件路径
 
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

11、启动和关闭数据库服务

pg_ctl start
pg_ctl stop

3、配置数据库

1、配置环境变量

在 /etc/profile 或者 ~/.bash_profile中添加以下内容
 
export PGHOME=/usr/local/pgsql   
export PGDATA=/usr/local/pgsql/data
export LD_LIBRARY_PATH=/usr/local/pgslq/lib
export PATH=$PATH:$HOME/bin:/usr/local/pgsql/bin
 
命令解析
bash 登陆的时候读取配置文件的顺序如下:
 
.bash_profile
.bash_login
.profile
 
按这个顺序只要读到一个就不再读取其他两个。全局的/etc/profile是最先读的,/etc/profile里面的配置可以在以上三个文件中覆盖掉。

 2、简单配置 在/usr/local/pgsql/data下找到配置文件

默认创建的数据库无法接受远程链接在pg_hba.conf中加入一下命令
host all  all  0/0 md5
 
该命令允许任何账户远程连接数据库,连接时需要提供密码
pg_hba.conf 是一个黑白名单的访问控制文件,可以控制允许哪些IP地址访问数据库

 3修改监听的IP和端口

在数据目录下编辑 postgres.conf文件
修改
# listen_addresses = 'localhost'
# port = 5432
 
参数listen_addresses 表示的是监听地址,默认是在 localhost监听,这会造成远程主机无法访问,需要把监听地址改为实际的网络地址,一种简单的方式是把地址改为'*'
listen_addresses = '*'
 
参数port表示数据库的端口,默认为5432,如果一台机器上安装了多个数据库实例,笔者就是在docker上也有一个数据服务,占用了5432的端口。所以对host进行了修改
 
对于上述两个参数,需要重启数据库才会生销

4、备注

如果修改了host端口,需要在/etc/profile 或者 ~/.bash_profile 在加入一行内容
exprot PGHOST=新的端口

以上就是Centos环境下Postgresql 安装配置及环境变量配置技巧的详细内容,更多关于Postgresql 安装配置的资料请关注三水点靠木其它相关文章!

PostgreSQL 相关文章推荐
PostgreSQL存储过程实用脚本(二):创建函数入门
Apr 05 PostgreSQL
postgres之jsonb属性的使用操作
Jun 23 PostgreSQL
通过Qt连接OpenGauss数据库的详细教程
Jun 23 PostgreSQL
基于PostgreSQL/openGauss 的分布式数据库解决方案
Dec 06 PostgreSQL
Rust 连接 PostgreSQL 数据库的详细过程
Jan 22 PostgreSQL
Oracle配置dblink访问PostgreSQL的操作方法
Mar 21 PostgreSQL
PostgreSQL并行计算算法及参数强制并行度设置方法
Apr 07 PostgreSQL
PostgreSQL之连接失败的问题及解决
May 08 PostgreSQL
postgresql中如何执行sql文件
May 08 PostgreSQL
PostgreSQL存储过程实用脚本(二):创建函数入门
PostgreSQL将数据加载到buffer cache中操作方法
Apr 16 #PostgreSQL
自定义函数实现单词排序并运用于PostgreSQL(实现代码)
PostgreSQL通过oracle_fdw访问Oracle数据的实现步骤
如何使用PostgreSQL进行中文全文检索
May 27 #PostgreSQL
postgresql无序uuid性能测试及对数据库的影响
Jun 11 #PostgreSQL
postgres之jsonb属性的使用操作
Jun 23 #PostgreSQL
You might like
落伍首发 php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码
2006/12/16 PHP
php header()函数使用说明
2008/07/10 PHP
php实现的验证码文件类实例
2015/06/18 PHP
PHP7 新特性详细介绍
2016/09/06 PHP
在chrome中window.onload事件的一些问题
2010/03/01 Javascript
JavaScript编程的10个实用小技巧
2014/04/18 Javascript
js实现同一个页面多个渐变效果的方法
2015/04/10 Javascript
详解AngularJS中的filter过滤器用法
2016/01/04 Javascript
js获取客户端操作系统类型的方法【测试可用】
2016/05/27 Javascript
JavaScript中的Array 对象(数组对象)
2016/06/02 Javascript
关于javascript中限定时间内防止按钮重复点击的思路详解
2016/08/16 Javascript
Angular 4环境准备与Angular cli创建项目详解
2017/05/27 Javascript
jQuery中each遍历的三种方法实例分析
2018/09/07 jQuery
JS/HTML5游戏常用算法之追踪算法实例详解
2018/12/12 Javascript
JavaScript递归函数定义与用法实例分析
2019/01/24 Javascript
vue 实现单选框设置默认选中值
2019/11/07 Javascript
vue-preview动态获取图片宽高并增加旋转功能的实现
2020/07/29 Javascript
python抓取网页内容示例分享
2014/02/24 Python
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
分享Python开发中要注意的十个小贴士
2016/08/30 Python
python 文件转成16进制数组的实例
2018/07/09 Python
pytorch加载自定义网络权重的实现
2020/01/07 Python
Python3 元组tuple入门基础
2020/02/09 Python
基于Python3.7.1无法导入Numpy的解决方式
2020/03/09 Python
PyQt5中向单元格添加控件的方法示例
2020/03/24 Python
纯CSS3编写的的精美动画进度条(无flash/无图像/无脚本/附源码)
2013/01/07 HTML / CSS
详解HTML5通讯录获取指定多个人的信息
2016/12/20 HTML / CSS
英国复古服装和球衣购买网站:3Retro Football
2018/07/09 全球购物
Marlies Dekkers内衣法国官方网上商店:国际知名的荷兰内衣品牌
2019/03/18 全球购物
大学生优秀的自我评价分享
2013/10/22 职场文书
缓刑人员的思想汇报
2014/01/11 职场文书
个人自我剖析材料
2014/02/07 职场文书
公司任命书范本
2014/06/04 职场文书
校园绿化美化方案
2014/06/08 职场文书
捐助感谢信
2015/01/22 职场文书
项目验收申请报告
2015/05/15 职场文书