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. hibernate使用手写sql以及对结果list的处理

    Session sees=simpleDAO.getSessionFactory().openSession(); String sql = "select * from fhcb_08_t ...

  2. 自动化监控系统(二)连接数据库,创建app,添加model,同步数据库

    数据库我使用:mysql5.7 程序连接数据库的模块:pymysql 一.创建数据库: dbname:automatedmonitor 二.使用pip安装pymysql,这里我直接在pycharm上安 ...

  3. 通过反射来创建对象?getConstructor()和getDeclaredConstructor()区别?

    1. 通过类对象调用newInstance()方法,适用于无参构造方法: 例如:String.class.newInstance() public class Solution { public st ...

  4. MYSql 存储过程自定义跳出

    MYSql存储过程自定义跳出 我们有时会在存储过程中进行一些判断,当判断条件达成时候我们有时会直接跳出存储过程. 但是存储过程不支持return直接返回的操作, 所以我们只能采用另一种方法,'leav ...

  5. linux指令【参考鸟哥的Linux私房菜】

    date指令  显示日期 cal指令 显示日历 bc  计算器  scale+number  显示几位小数  quit退出bc tab键  命令提示  入输入ca,按下tab键,会将所有ca的指令全部 ...

  6. 单向连通图 Going from u to v or from v to u? poj2762

    http://poj.org/problem?id=2762 强连通求子图和子图关系 + 子图关系是链式结构 #include <cstdio> #include <cstdlib& ...

  7. C#/.NET 实现的多屏联动,多屏共享,显示到指定屏幕上

    假设我现在有4个屏幕,希望实现主屏幕在操作的时候,其他3块屏幕可以实时联动,并且延迟在1s以内. 正常情况下,我们可以借助于各个远程软件实现效果,但是有时候会显得笨重麻烦,假如只有一台服务器呢?? S ...

  8. cordova 与 phonegap关系

    Apache Cordova是PhoneGap贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎.PhoneGap是一个开源的开发框架,使用HTML ...

  9. 执行SQL语句---SELECT

    1.通常从MySQL数据库中检索数据有4个步骤: (1)发出查询: 用mysql_query发出查询. (2)检索数据: 用mysql_store_result/mysql_use_result (3 ...

  10. trackback 捕获异常并打印

    ### 1 except Exception as e: print(traceback.format_exc()) def _handle_thread_exception(request, exc ...