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. error LNK2019: 无法解析的外部符号 _PhInitializePhLib,该符号在函数 _EnumHandle 中被引用

    编译时提示上面的错误,而确实应用了该函数的库文件,直接搜索lib文件内容,发送该函数的声明如下_PhInitializePhLib@0 说明函数的编译方式和库文件的编译方式不同,发现该工程的调用约定为 ...

  2. 记一次Tomcat运行失败记录

    记一次Tomcat运行失败记录 如图tomcat运行之后会出现这样的情况,在网上百度之后大部分都说的是web.xml或者其他配置文件的问题,但是根据网上修改了之后却还是老样子. 这里有比较好的网址可以 ...

  3. jeecg 实现lhgDialog窗口传值

    需要在jeecg中的dialog弹框往调用的窗口赋值. 定义内容页调用窗体实例对象接口 var windowapi = frameElement.api ; var W = windowapi.ope ...

  4. PostgreSQL——启动脚本

    <仅供参考,执行結果受环境影响> 如下: pgpath='/usr/local/pgsql/bin' pgdata='/usr/local/pgsql/data' #以 postgres ...

  5. react 中刷新,路由传参数丢失不存在了?

    你可能在Link to没写state {{pathname:'/report',state:{storageClear:this.state.storageClear}}}

  6. qt5.9.1 VS2017 qalgorithms.h

    qt5.9.1只有VS2017 64位支持, 在32位工程下会出现关于qalgorithms.h的错误,参考以下内容修改该头文件解决: https://codereview.qt-project.or ...

  7. Windows server 2016 / Windows 10关于域管理员帐号权限不足的问题

    今天在测试windows server 2016的域创建时,当安装结束之后,发现使用Administrator用户进行操作时,被提示了权限不足这个问题.于是我在百度上查找了一番之后,找到了解决方法. ...

  8. python 将字符串转换成字典dict

    JSON到字典转化:>>>dictinfo = json.loads(json_str) 输出dict类型 字典到JSON转化:>>>jsoninfo = json ...

  9. python的format函数是什么意思format是什么意思

    format是python2.6新增的一个格式化字符串的方法,相对于老版的%格式方法,它有很多优点. 1.不需要理会数据类型的问题,在%方法中%s只能替代字符串类型 2.单个参数可以多次输出,参数顺序 ...

  10. NX二次开发-UFUN单按钮模态对话框窗口打印uc1601用法

    NX9+VS2012 #include <uf.h> #include <uf_ui.h> UF_initialize(); //方法1(uc1601) uc1601();// ...