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 22 PostgreSQL
Centos环境下Postgresql 安装配置及环境变量配置技巧
May 18 PostgreSQL
postgresql无序uuid性能测试及对数据库的影响
Jun 11 PostgreSQL
通过Qt连接OpenGauss数据库的详细教程
Jun 23 PostgreSQL
关于PostgreSQL JSONB的匹配和交集问题
Sep 14 PostgreSQL
PostGIS的安装与入门使用指南
Jan 18 PostgreSQL
使用PostGIS完成两点间的河流轨迹及流经长度的计算(推荐)
Jan 18 PostgreSQL
PostgreSQL并行计算算法及参数强制并行度设置方法
Apr 07 PostgreSQL
PostgreSQL数据库创建并使用视图以及子查询
Apr 11 PostgreSQL
PostgreSQL常用字符串分割函数整理汇总
Jul 07 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 单引号与双引号的区别
2009/11/24 PHP
php短域名转换为实际域名函数
2011/01/17 PHP
PHP实现的随机红包算法示例
2017/08/14 PHP
Laravel 5.4.36中session没有保存成功问题的解决
2018/02/19 PHP
使用laravel的Eloquent模型如何获取数据库的指定列
2019/10/17 PHP
jQuery.each()用法分享
2012/07/31 Javascript
js调用打印机打印网页字体总是缩小一号的解决方法
2014/01/24 Javascript
纯css+js写的一个简单的tab标签页带样式
2014/01/28 Javascript
完美兼容各大浏览器的jQuery仿新浪图文淡入淡出间歇滚动特效
2014/11/12 Javascript
javascript截取字符串小结
2015/04/28 Javascript
JavaScript数组去重的五种方法
2015/11/05 Javascript
学习javascript面向对象 实例讲解面向对象选项卡
2016/01/04 Javascript
jQuery解决浏览器兼容性问题案例分析
2016/04/15 Javascript
AngularJS监听ng-repeat渲染完成的方法
2018/03/20 Javascript
详解React Native 屏幕适配(炒鸡简单的方法)
2018/06/11 Javascript
15 分钟掌握vue-next响应式原理
2019/10/13 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
2020/02/24 Javascript
[02:24]DOTA2痛苦女王 英雄基础教程
2013/11/26 DOTA
[03:30]DOTA2完美“圣”典精彩集锦
2016/12/27 DOTA
[44:30]完美世界DOTA2联赛PWL S2 GXR vs Magma 第一场 11.25
2020/11/26 DOTA
利用Python实现原创工具的Logo与Help
2018/12/03 Python
python自定义函数实现一个数的三次方计算方法
2019/01/20 Python
在python中利用opencv简单做图片比对的方法
2019/01/24 Python
复化梯形求积分实例——用Python进行数值计算
2019/11/20 Python
python实现IOU计算案例
2020/04/12 Python
浅谈JupyterNotebook导出pdf解决中文的问题
2020/04/22 Python
HTML5轻松实现全屏视频背景的示例
2018/04/23 HTML / CSS
澳大利亚女性快速时尚零售商:Ally Fashion
2018/04/25 全球购物
香港通票:Hong Kong Pass
2019/02/26 全球购物
opencv实现图像平移效果
2021/03/24 Python
电子商务专业学生的学习自我评价
2013/10/27 职场文书
个人委托书怎么写
2014/04/04 职场文书
学生会宣传部部长竞选演讲稿
2014/04/25 职场文书
竞选班长演讲稿400字
2014/08/22 职场文书
2014年安置帮教工作总结
2014/12/11 职场文书
学生检讨书怎么写
2015/05/07 职场文书