docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > docker登陆并操作postgresql

docker容器中登陆并操作postgresql的实现

作者:鲲志说

本文主要介绍了docker容器中登陆并操作postgresql的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

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

PostgreSQL

docker容器操作postgresql

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

docker容器操作

查看docker镜像

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

docker ps

进入容器

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

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

登陆postgresql数据库

执行完毕上面的命令,我们就进入了postgresql的容器中
因为blockscout将数据库密码写入了环境变量中,因此使用下面的命令即可

psql -U blockscout

具体解释如下:

登陆成功如下图

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

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

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

postgresql相关操作

列出所有的数据库

\l
或
\list

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

切换数据库

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

\c blockscout

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

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

\d

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

退出查看

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

q

列出指定表的所有字段

这里以表address_names为例

\d address_names

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

查看指定表的基本情况

这里还是以表address_names为例

\d+ address_names

如下图

查询指定表内容

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

select * from address_names limit 5;

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

退出postgresql的登陆

\q

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

退出postgresql容器

exit;

如下图,成功退出了

到此这篇关于docker容器中登陆并操作postgresql的实现的文章就介绍到这了,更多相关docker登陆并操作postgresql内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

您可能感兴趣的文章:
阅读全文