OpenShift:如何从我的 PC 连接到 postgresql

postgresql

1个回答

写回答

P-eal

2025-06-23 06:20

+ 关注

PostgreSQL
PostgreSQL

OpenShift:如何从我的 PC 连接到 PostgreSQL

在开发和部署应用程序时,连接到数据库是一项关键任务。对于使用 OpenShift 平台的开发人员来说,连接到 PostgreSQL 数据库是一种常见的需求。本文将介绍如何从您的个人计算机(PC)连接到运行在 OpenShift 上的 PostgreSQL 数据库,并提供一个实际的案例代码。

步骤一:创建 OpenShift 项目

首先,您需要在 OpenShift 上创建一个项目来托管您的应用程序和数据库。您可以使用 OpenShift 命令行工具(oc)或 OpenShift Web 控制台来完成这个步骤。

步骤二:部署 PostgreSQL 数据库

一旦您的项目创建完成,您可以开始部署 PostgreSQL 数据库。在 OpenShift 中,您可以使用 PostgreSQL 数据库模板来快速部署一个数据库实例。您可以在 OpenShift Web 控制台的“添加 to Project”选项中找到这个模板,或者使用以下命令在命令行中部署数据库:

oc new-app PostgreSQL-persistent

这将在您的项目中创建一个持久的 PostgreSQL 数据库实例。

步骤三:设置数据库凭据

为了连接到 PostgreSQL 数据库,您需要设置数据库凭据。在 OpenShift 中,您可以使用“secrets”来存储敏感信息。以下是一个设置数据库凭据的示例命令:

oc create secret generic my-Database-credentials --from-literal=username=my-username --from-literal=password=my-password

这将创建一个名为“my-Database-credentials”的 secret,并将用户名和密码存储在其中。

步骤四:将数据库凭据挂载到应用程序

接下来,您需要将数据库凭据挂载到您的应用程序中,以便应用程序可以使用这些凭据来连接到 PostgreSQL 数据库。以下是一个示例命令:

oc set env dc/my-app --from=secret/my-Database-credentials

这将将名为“my-Database-credentials”的 secret 中的环境变量注入到名为“my-app”的应用程序中。

步骤五:从 PC 连接到 PostgreSQL 数据库

最后一步是从您的个人计算机连接到运行在 OpenShift 上的 PostgreSQL 数据库。您可以使用任何支持 PostgreSQL 连接的客户端工具,例如 pgAdmin 或 psql。以下是一个使用 psql 连接到数据库的示例命令:

psql -h <OpenShift IP 地址> -p <OpenShift 端口> -U <数据库用户名> -W

您可以在 OpenShift Web 控制台中找到您的 PostgreSQL 数据库的 IP 地址和端口号。输入命令后,您将被要求输入数据库密码。

案例代码:从 Python 连接到 PostgreSQL 数据库

以下是一个使用 Python 连接到运行在 OpenShift 上的 PostgreSQL 数据库的示例代码:

Python

import psycopg2

# 设置数据库连接参数

conn_params = {

"host": "<OpenShift IP 地址>",

"port": "<OpenShift 端口>",

"Database": "<数据库名称>",

"user": "<数据库用户名>",

"password": "<数据库密码>"

}

# 连接到数据库

conn = psycopg2.connect(**conn_params)

# 创建游标

cur = conn.cursor()

# 执行 SQL 查询

cur.execute("SELECT * FROM my_table")

# 获取查询结果

results = cur.fetchall()

# 打印结果

for row in results:

print(row)

# 关闭游标和数据库连接

cur.close()

conn.close()

在这个示例代码中,您需要将 , , <数据库名称>, <数据库用户名><数据库密码> 替换为实际的值。

通过这些步骤和示例代码,您可以从您的个人计算机连接到运行在 OpenShift 上的 PostgreSQL 数据库,并开始开发和部署您的应用程序。

举报有用(4分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号