【送书活动八期】docker容器中登陆并操作postgresql
作者:mmseoamin日期:2024-02-06

这里的背景比较简单,因为区块链浏览器使用的是blockscout,blockscout的数据库选择的是postgresql,这些服务组件都是使用的docker容器来管理,今天进行区块链上交易查询的时候,发现数据存在部分问题,因此需要进入postgresql来排查

【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第1张

目录

  • PostgreSQL
  • docker容器操作postgresql
    • docker容器操作
      • 查看docker镜像
      • 进入容器
      • 登陆postgresql数据库
      • postgresql相关操作
        • 列出所有的数据库
        • 切换数据库
        • 列出当前数据库下的数据表
        • 退出查看
        • 列出指定表的所有字段
        • 查看指定表的基本情况
        • 查询指定表内容
        • 退出postgresql的登陆
        • 退出postgresql容器
        • 书籍推荐
          • 书籍名称:《鸟哥的Linux私房菜-服务器架设篇》
          • 内容介绍
          • 适合人群
          • 如何领书
          • 自主购买
          • 最后

            PostgreSQL

            如果连PostgreSQL是什么都不清楚的小伙伴,建议看一下菜鸟教程- PostgreSQL 教程,讲解和操作还是很友好的。

            • PostgreSQL 是一个免费的对象-关系数据库服务器(ORDBMS),在灵活的BSD许可证下发行。

            • PostgreSQL 开发者把它念作 post-gress-Q-L。

            • PostgreSQL 的 Slogan 是 “世界上最先进的开源关系型数据库”。


              docker容器操作postgresql

              多余的不讲了,我们直接来操作

              docker容器操作

              查看docker镜像

              这里我们只需要关注容器id(CONTAINER ID)和容器名称(NAMES)即可,后面进入postgresql数据库会用到

              docker ps
              

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第2张

              进入容器

              这里我们以容器名称为db的为例

              #通过容器名称进入镜像
              docker exec -it db /bin/sh
              或
              #通过容器ID进入镜像
              docker exec -it 0ad4d42cbc99 /bin/sh
              

              登陆postgresql数据库

              执行完毕上面的命令,我们就进入了postgresql的容器中

              因为blockscout将数据库密码写入了环境变量中,因此使用下面的命令即可

              psql -U blockscout
              

              具体解释如下:

              • psql: 是 PostgreSQL 数据库的命令行客户端工具,用于执行 SQL 查询和管理数据库。
              • -U blockscout: 是命令的参数部分,指定连接数据库时要使用的用户名。在这里,用户名是 blockscout。

                这个命令表示正在使用 psql 命令行工具连接到 PostgreSQL 数据库,并以 blockscout用户的身份进行连接。连接成功后,可以执行 SQL 查询、管理数据库等操作。

              登陆成功如下图

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第3张

              在正常情况下,如果要使用用户名和密码登录 PostgreSQL,可以使用以下格式的命令:

              psql -U your_username -d your_database -h your_host -p your_port -W
              

              -W 选项用于指示系统提示输入密码

              postgresql相关操作

              列出所有的数据库

              \l
              或
              \list
              

              可以看到有下面4个数据库

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第4张

              切换数据库

              我们切换到 blockscout数据库,命令如下:

              \c blockscout
              

              会看到提示,当前链接的数据库是blockscout,用户是blockscout

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第5张

              列出当前数据库下的数据表

              \d
              

              如下图,可以看到所有的表

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第6张

              退出查看

              记住在postgresql的操作中,所有的退出,都是轻轻点击一下q键即可

              q
              

              列出指定表的所有字段

              这里以表address_names为例

              \d address_names
              

              如下图,我们可以看到字段名称、类型、描述、是否为空等等

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第7张

              查看指定表的基本情况

              这里还是以表address_names为例

              \d+ address_names
              

              如下图

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第8张

              查询指定表内容

              这里仍然以表address_names为例,我们只查询5条

              select * from address_names limit 5;
              

              如下图,可以看出,查询语句和mysql没有什么区别

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第9张

              退出postgresql的登陆

              \q
              

              这里单单一个q是无法退出的

              退出postgresql容器

              exit;
              

              如下图,成功退出了

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第10张


              书籍推荐

              《鸟哥的Linux私房菜——服务器架设篇(第三版修订)》是一本不可或缺的Linux服务器架设指导书,适合想要深入学习Linux服务器架设和管理的读者。本书不仅教授如何搭建服务器,还重点关注服务器的安全防护和维护,以及解决常见问题的策略。作者以系统基础和网络基础为起点,深入浅出地介绍了各种常见服务器的搭建方法。无论您是初学者还是有经验的用户,本书都将帮助您掌握Linux服务器的核心知识,为您的服务器提供稳定、安全的运行环境。

              书籍名称:《鸟哥的Linux私房菜-服务器架设篇》

              【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第11张

              内容介绍

              作者首先从系统基础和网络基础开始讲解,然后讨论网络攻击和防火墙保护主机,最后才介绍服务器的架设。

              《鸟哥的Linux私房菜:第三版修订. 服务器架设篇》共分为四篇:

              • 第一篇是服务器搭建前的进修专区,主要介绍架设服务器之前必须具备的基本知识。阅读完这一篇后,无论你使用何种方式连接Internet,都不会有问题;
              • 第二篇是主机的简易安全防护措施,鸟哥会告诉你如何保护你的主机,养成良好的操作习惯,使你的主机免受病毒侵害,安全能经受住各种考验;
              • 第三篇是局域网内常见服务器的搭建,介绍内部网络经常使用的远程连接服务(如SSH、XDMCP、VNC、XRDP)、网络参数配置服务(如DHCP、NFS、NTP)、网络磁盘服务(如SAMBA、iSCSI)以及代理服务器等。其中,SSH密钥系统对于异地备份非常有帮助;
              • 第四篇是常见的Internet服务器的搭建,介绍DNS、WWW、FTP和邮件服务器等常见的服务。

              适合人群

              • 适合想要深入学习Linux服务器架设和管理的读者
              • 同样适合Linux初学者

                如何领书

                ————————————————

                本次本篇文章送书 🔥1本 评论区抽1位小伙伴送书

                📆 活动时间:达到100 人参与时自动开奖,1月30日18:00 截止

                🎁 抽奖方式:利用抽奖小程序进行抽奖

                💡 参与方式:关注微信公众号《鲲志说》,发送:鸟哥我来了,即可参与

                或微信扫描下方图片

                【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第12张

                也可以加我:KunZhiSays,注明来意!

                ————————————————

                🔥 注:活动结束后,会私信中奖粉丝的,各位注意查看私信哦!

                自主购买

                小伙伴也可以访问链接进行自主购买哦~

                直达京东购买链接🔗:《鸟哥的Linux私房菜-服务器架设篇》


                最后

                • 好看的灵魂千篇一律,有趣的鲲志一百六七!
                • 如果觉得文章还不错的话,可以点赞+收藏+关注 支持一下,鲲志的主页 还有很多有趣的文章,欢迎小伙伴们前去点评
                • 如果有什么需要改进的地方还请大佬指出❌
                • 欢迎学习交流|商务合作|共同进步!
                • ❤️ kunzhi96 公众号【鲲志说】

                【送书活动八期】docker容器中登陆并操作postgresql,在这里插入图片描述,第13张