step1:官网下载postgres源码

URL:https://www.postgresql.org/ftp/source/

step2:解压源码文件

tar -zxvf postgresql-12.0.tar.gz

step3:移动解压后的文件到安装目录

mv postgresql-12.0 /usr/local/pgsql

step4:执行./configure命令

./configure --prefix=/usr/local/pgsql --without-readline --enable-debug

相关的配置选项:https://blog.csdn.net/weixin_34067049/article/details/90423264

指定安装后的可执行文件资源目录

step5:执行make命令

make

step6:执行make install命令

make install

psql --version  //查询安装版本

step7:添加用户,设置目录权限

sudo adduser postgres

sudo passwd postgres

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

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

 此处若在root用户下执行过chmod -R 777 *命令,容易造成权限错误,导致postgres服务无法启动,需将root权限改回

 查看/usr/local/pgsql/data目录下的serverlog日志文件,查看报错,执行命令改回权限chmod 0700 /usr/local/pgsql/data

step8:配置环境变量

切换用户 su - postgres
打开文件 vim ~/ .bash_profile

添加路径 export PATH=$PATH:/usr/local/pgsql/bin

执行生效 source /etc/profile

step9:切换用户,初始化数据

su - postgres /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

step10:Linux开机自启动服务

cp /usr/local/pgsql/contrib/start-scripts/linux /etc/init.d/postgresql    //将linux文件复制到新目录init.d,并重命名为postgresql

chmod u+x /etc/init.d/postgresql    //只授予这个文件的所属者u执行的权限x
systemctl enable postgresql 

systemctl start postgresql

step11:创建测试库(切换到用户postgres下执行命令)

su - postgres

createdb test

psql test

step12:允许所有连接

打开文件 /usr/local/pgsql/data/pg_hba.conf

添加内容 host all all 0.0.0.0/ trust

step13:侦听所有连接

打开文件 /usr/local/pgsql/data/postgresql.conf

添加内容 listen_addresses = '*'
logging_collector = on

-----------------------------------------------------------------------------------------------------

切换目录    cd /etc/init.d

启动命令    ./postgresql start

重启命令    ./postgresql restart

-----------------------------------------------------------------------------------------------------

step14:DataGrip连接测试库test

Ubuntu环境下Postgres源码文件编译安装步骤的更多相关文章

  1. LAMP 环境搭建之源码包编译安装

    mysql用的二进制包安装. Apache php 用的源码包 mysql版本5.5.46    Apache版本2.4.7  PHP版本:5.5 mysql安装部分参考了阿铭linux的内容. 这是 ...

  2. Ubuntu下STL源码文件路径+VS2010下查看STL源码

    Ubuntu版本信息 然后STL源码位置就在 /usr/include/c++/7/bits /usr/include/c++/7.4.9/bits 这两个文件下都有 然后我日常写程序用的Window ...

  3. centos7环境下apache2.2.34的编译安装

    .获取apache2..34的源码包 http://archive.apache.org/dist/httpd/httpd-2.2.34.tar.gz .获取apache的编译参数 apache的编译 ...

  4. redhat6.2 clang编译环境搭建(采用源码包编译安装)

    1. About clang++ office site:http://clang.llvm.org/ A major focus of our work on clang is to make it ...

  5. 《UNIX网络编程(第3版)》unp.h等源码文件的编译安装

    操作系统:Mac OS X 10.11.5 1.下载书中的源代码:点击下载 2.切换到解压后的目录 unpv13e,先查看下 README,依次执行: ./configure cd lib make ...

  6. Ubuntu系统下OpenDaylight源码编译安装

    操作系统:Linux x64 / Ubuntu 14.04 研究领域:软件定义网络SDN (Software-defined Networking) 开发组件:OpenDaylight 声明:转载请注 ...

  7. [C/C++] 各种C/C++编译器对UTF-8源码文件的兼容性测试(VC、GCC、BCB)

    在不同平台上开发C/C++程序时,为了避免源码文件乱码,得采用UTF-8编码来存储源码文件.但是很多编译器对UTF-8源码文件兼容性不佳,于是我做了一些测试,分析了最佳保存方案. 一.测试程序 为了测 ...

  8. Windows10 + VS2015 (Win SDK10)环境下的64位 VTK编译小结

    之前在学习vtk过程中,感觉vtk的编译还是很简单的,基本上不会碰到什么棘手的错误.但是,当我在Win10+VS2015这个环境下配置时,却遇到了麻烦.经过一番折腾之后,终于将vtkbian编译成功了 ...

  9. 在Ubuntu环境下配置Proxmark3(PM3)使用环境

    参考资料:PM3官方Wiki 因为国内网络上大多是在Kali系统上使用PM3的教程(链接1.链接2.链接3),而这些教程的步骤对于Ubuntu系统并不完全适用.所以写下本文,记录我个人的安装经历. 本 ...

随机推荐

  1. Java学习之DOS基础

    Dos命令行dir:列出当前目录下的文件和文件夹md :创建目录rd :删除目录cd :进入指定目录cd..:退回到上一级目录cd/:退回到根目录del:删除文件exit:退出dos命令行 进入dos ...

  2. 校验文件是否是同一个文件,以及mac中使用MD5命令

    背景 sz了war包,因为查看不到里面的内容,并不确定是否是同一个文件. 解决 通过MD5校验 md5sum xxxx 但是在mac中是没有这个命令的下载半天没下载下来,下面是快捷操作. 1.打开终端 ...

  3. 7、Appium常用API

    嗯,官网已经介绍的很全了.会选几个常用API后期整理. Appium常用API地址:http://appium.io/docs/cn/writing-running-appium/appium-bin ...

  4. 2019 牛客多校第六场 D Move

    题目链接:https://ac.nowcoder.com/acm/contest/886/D 题解摘自官方题解 题目大意 有 K 个体积相同的箱子,有 N 个体积相同或相异的物品,现要按照如下策略装箱 ...

  5. 广度优先搜索(Breadth First Search)

    Date:2019-07-03 14:29:02 走完一层的所有房间,再走下一层,用队列实现 算法实现 /*--------------------------模版------------------ ...

  6. C# Windows服务相关

    代码及注释 ServiceController sc = new ServiceController("gupdatem"); sc.Stop();//停止服务 sc.Start( ...

  7. vue中:key 和react 中key={} 的作用,以及ref的特性?

    vue中:key 和react 中key={} 为了给 vue 或者react 一个提示,以便它能跟踪每个节点的身份,从而重用和重新排序现有元素,你需要为每项提供一个唯一 key 属性 一句话概括就是 ...

  8. Flask理论基础(一)视图函数和URL反转函数(url_for)

    一.视图函数 1.1 基本用法试图函数是 app.route 或者 bp.route(蓝图)装饰器装饰的函数.该函数实现了对URL路径的转换,也就是路由功能,例如下面代码定义了默认url ‘/’ 和‘ ...

  9. etc/profile /etc/bashrc ~/.bash_profile ~/.bashrc等配置文件区别

    什么是交互式shell和非交互式shell,什么是login shell 和non-login shell. 交互式模式:就是shell等待你的输入,并且执行你提交的命令.这种模式被称作交互式是因为s ...

  10. Python全栈开发:RabbitMQ/Redis/Memcache/SQLAlchemy

    Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度 ...