背景

简单啰嗦一下背景,想看解决方案的,直接跳过本章节。

最近在预研postgresql的功能,其中有个场景就是需要在系统中ssh到postgresql集群上执行psql命令。但是我只有容器版的postgresql,并不能直接ssh到容器中。而ssh到我自己的主机上,由于没有安装postgresql,不能执行psql命令。
我想到了以下两个解决方案:

  • 直接配置容器IP,ssh到容器内,这样就可以执行psql命令,但是检索了相关操作后,发现很繁琐,还要修改主机配置。可能会影响主机的其他应用,于是放弃了。
  • 在我自己的主机上部署postgresql。检索了相关教程后,发现需要新建用户,而我本身的账号没有主机上新建用户权限;且官网没有提供安装包,只提供了yum方式安装,而主机yum源受限,无法使用外网yum源安装。一番检索后,发现了可以源码安装,但是程序繁琐,放弃了。

以上两个方案,供大家参考,如果下面的方案不可行,以上两个方案希望可以提供一些借鉴。

简单步骤

不想看我啰嗦的,直接看这个简单步骤。

  • 第一步 选择适配版本的安装包
    进入下载地址,根据自己的操作系统版本选择安装包

https://yum.postgresql.org/11/redhat/rhel-7-x86_64/repoview/index.html

  • 第二步 下载客户端安装包
    下载postgresqlpostgresql-libs安装包

  • 第三步 安装客户端
    将安装包上传至主机,然后执行安装命令。
    rpm -i postgresql11-libs-11.2-1PGDG.rhel7.x86_64.rpm
    rpm -i postgresql11-11.2-1PGDG.rhel7.x86_64.rpm

  • 第四步 验证结果
    执行psql命令,未报命令不存在异常,则说明安装成功。

解决方案

下面详细介绍我的解决方案。

下载安装包

其实这个解决方案,实在官网上找到的,在寻找源码安装部署的时候,发现安装包被拆分成了不同的小包,以应对不同的使用场合。

下载地址:

https://yum.postgresql.org/11/redhat/rhel-7-x86_64/repoview/index.html

这个是红帽子Linux,CentOS-7的安装地址,其他操作系统,请回退上级目录选择。

进去之后,我们选择上面的postgresql database server

进来后,可以看到里面有4个安装包

postgresql11 - PostgreSQL 客户端程序和依赖包
postgresql11-contrib - PostgreSQL 发布的源代码和二进制文件
postgresql11-libs - PostgreSQL 客户端依赖的公共包
postgresql11-server - PostgreSQL 的服务端程序代码

看到这里,我想大家都明白要干什么了。。

安装客户端

是的,我们只需要安装客户端即可。进入postgresql11中查看介绍,可以知道,我们的想法是正确的。

If you want to manipulate a PostgreSQL database on a local or remote PostgreSQL
server, you need this package. You also need to install this package
if you’re installing the postgresql11-server package.
如果你想要操作本地或者远程的PostgreSQL数据库服务,那么你需要这个包。如果你在安装服务端程序,那么这个包也是必须要安装的。

查看一下postgresql11-libs介绍,可以知道,libs是通用包,所有程序都需要安装。

结合以上,我们下载好postgresql11postgresql11-libs两个包,然后上传至主机上相关目录。

使用rpm命令安。命令格式如下:
rpm -i postgresql11-libs-11.2-1PGDG.rhel7.x86_64.rpm
rpm -i postgresql11-11.2-1PGDG.rhel7.x86_64.rpm

安装过程会报告警:

warning: postgresql11-11.2-1PGDG.rhel7.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 442df0f8: NOKEY

可忽略。
注意:需要先安装libs,再安装客户端,否则会报出异常提示。

安装好了之后,执行psql命令,提示异常,但没有报出命令不存在,则说明安装成果,恭喜你,可以使用psql命令连接远程postgresql数据库了。

Linux主机下连接远程postgresql数据库、容器版postgresql数据库相关推荐

  1. [Ubuntu]在Ubuntu系统下连接远程Ubuntu服务器并传输文件:安装putty, filezilla

    转载自:[Ubuntu]在Ubuntu系统下连接远程Ubuntu服务器并传输文件_北望花村-CSDN博客_ubuntu上传文件到服务器 本篇文章介绍,如何在Ubuntu系统下连接远程Ubuntu系统并 ...

  2. xp远程登录linux,Linux操作系统下如何远程登录XP桌面

    在天下网吧-网吧系统-网吧天下栏目上一篇文章中,我们看到了:希望对各位网吧网管或者网吧维护,做网吧系统的各位大大有用,那么今天我们一起来看下:Linux操作系统下如何远程登录XP桌面 在前面的文章中我 ...

  3. linux文本文件导入数据库,Linux系统下如何将txt文档导入到数据库mysql的方法教程...

    前段时间做小项目的时候遇到了一个需求:把txt文档的数据导入到mysql数据库中,开始本来想直接用Mysql Workbench导入TXT文件,但是最后发现不支持TXT导入,结果我吧嗒吧嗒的去把TXT ...

  4. win7未启用计算机远程访问,Win7系统下连接远程提示未启用对服务器的远程访问如何解决...

    在 方法一. 1.首先在win7系统桌面上鼠标右击计算机,然后再选择[属性]; 2.进入计算机属性的界面,然后在再点击[高级系统设置]再在出来的框框内选择[高级]再按如下图所示的界面把选项勾起来.最后 ...

  5. linux apache 安装 rewrite,Linux主机下Apache如何使用rewrite模块

    Linux主机下Apache使用rewrite模块解决方案: 1. 需要在apache的配置文件httpd.conf中加入相应配置: Apache-1.3.x版本,在/usr/prima/apache ...

  6. Linux操作系统下实现远程开机

    Linux操作系统下实现远程开机 实现远程开机的条件,要满足以下两条:首先,这个被远程开机的机器必需是在局域网内,并且你知道这台机器的MAC地址:其次,你的网卡支持网络唤醒功能,当然,现在大部分网卡都 ...

  7. 【Linux】ssh连接远程服务器

    [Linux]ssh连接远程服务器 1.背景 2.实例 1.背景 Secure Shell(SSH)是一种加密网络协议,用于在不安全的网络上安全地运行网络服务. 利用SSH可以实现加密并安全地远程登录 ...

  8. Linux之Xshell5连接远程服务器

    首先安装Xshell5并成功. 进行远程linux链接创建 连接远程linux服务器 测试连接:reboot重启

  9. c linux下并行编程指南,Linux环境下C编程指南(第2版)

    摘要: <Linux环境下C编程指南(第2版)>系统地介绍在Linux平台下用C语言进行程序开发的过程,通过列举大量的程序实例,使读者能够很快掌握在Linux平台下进行C程序开发的方法和技 ...

最新文章

  1. wget下载https时遇到not trusted下载不了的解决办法
  2. 一款机械陀螺仪-四旋翼上的机械陀螺仪
  3. Shell - 文件运算符
  4. 今天闲来无事给我这老伙计A4L换个机油
  5. DOM(二)——XML DOM
  6. python网络编程基础语法_python网络编程
  7. ASP.NET MVC 第四个预览版(第一部分)
  8. uniapp弹出框_uni-app 弹出框插件 模态框 小程序dialog
  9. [渝粤教育] 重庆大学 房屋建筑学 参考 资料
  10. 用html制作带阴影小球弹跳,AE怎么制作一个有影子的弹跳小球动画?
  11. 招商银行一网通H5接口调试和测试报告撰写注意事项
  12. ECNU203.2333进制
  13. AI之NLP:自然语言处理技术简介(是什么/学什么/怎么用)、常用算法、经典案例之详细攻略(建议收藏)daiding
  14. iphone手机app通过代理测试本地api方法
  15. 订阅发布功能Java实现
  16. 《华为项目管理法》读书笔记
  17. python的var是什么意思_python3函数里var是什么意思?
  18. 群晖官方功能使用教程
  19. 如何调整html中音乐播放器的大小,HTML5音乐播放器(三):播放进度,时间显示以及音量的调节...
  20. Win10禁止应用独占麦克风

热门文章

  1. ML 学海拾贝 07/03/2018
  2. 牛客网错题集系列(三)
  3. 用阿里云搭建Http代理服务器
  4. 一、ElasticSearch5.6.3下载安装步骤 说明:ElasticSearch的运行不能用root执行,自己用useradd命令新建一个用户如下所示: sueradd chen passw
  5. SpringBoot application.properties和application.yml配置详解
  6. Visual Studio “无可用源“ 问题
  7. Java面试题之Redis的大坑
  8. 什么是数据库连接池?
  9. 微机原理与接口技术总结
  10. 使用Nodejs搭建一个简易的留言簿(完结)