我正在尝试连接到 Google Cloud Sql,这是一个 MySql 解决方案。我能够使用 MySql Workbench 进行连接。
我如何使用 C# 进行连接MySqlConnectionStringBuilder?
我找不到提供这三个证书的方法。
我正在尝试从我的 Google App Maker 应用连接到 Google Cloud SQL 数据库。不幸的是,我的 IT 人员尚未将 Google App Maker 设置为默认使用 Google Cloud SQL,因此我尝试以与过去连接外部 MySQL 数据库相同的方式连接到数据库,但它不适用于公共 IP 地址。
我已经创建了一个 Google Cloud SQL 数据库,并且可以使用公共 IP 地址从 MySQLWorkbench 连接到它。为了连接数据库,我必须为我的家用计算机添加 IP 地址。我不需要使用 SSL。
我为我的 Google App Maker 应用创建了一个 Google 服务帐户。然后,我将此服务帐户包含在包含 Cloud SQL 数据库的 Google 项目中。我为它分配了 Cloud SQL Admin 和 Cloud SQL Client 的权限。
我在 App Maker 中使用此代码尝试连接。这与我在其他外部 MySQL 数据库中使用的代码相同。IP 地址 34.xx.xx.xx 是 Google Cloud SQL 实例概览页面中列出的公共 IP 地址。
// App Settings
// Important Note: This is for demo purposes …Run Code Online (Sandbox Code Playgroud) 我在尝试连接到 Cloud SQL 实例时遇到问题。我创建了一个 SQL Server 实例,下载了云 sql 代理,一切似乎都开始连接,但我不断收到以下错误:
解析配置错误:
无效的“实例连接名称”:不支持的网络:unix
我指定了要使用的 tcp 端口,但它仍然抱怨 UNIX。这是我在尝试连接时使用的命令(为了隐私/安全,我替换了实际的实例连接名称):
./cloud_sql_proxy.exe -instances=[instance-connection-name]=tcp:3306
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激。谢谢!
我有这样的疑问:
l.loyaltycard_number, l.recipt_no,
l.totaltrans_amount, l.amount_paid,
l.reward_points, l.redeemed_points,
cashier FROM loyalty l
JOIN warehouses w
ON l.machine_ip = w.machine_ip
WHERE l.machine_name = $1
AND redeemed_points != $2
AND trasaction_time BETWEEN $3 AND $4
ORDER BY trasaction_time DESC;
Run Code Online (Sandbox Code Playgroud)
我有用于 transaction_time 的 HTML 日期选择器,格式为 dd/mm/yyyy。
每当我选择第一个数字大于 12 (22/02/2022) 的日期范围时。我收到上述错误。我怀疑是格式问题。
我在文档中找到了如何将 postgresql 日期样式设置为 DMY。这样做之后,我得到了同样的错误。
但是,当我在 Postgres cli 中运行相同的查询时,如下所示:
SELECT w.machine_name, l.trasaction_time,
l.loyaltycard_number, l.recipt_no,
l.totaltrans_amount, l.amount_paid,
l.reward_points, l.redeemed_points,
cashier FROM loyalty l
JOIN warehouses w
ON l.machine_ip = w.machine_ip
WHERE l.machine_name = 'HERMSERVER'
AND redeemed_points …Run Code Online (Sandbox Code Playgroud) 目前,我们的 api(部署在 cloudRun 上)通过传入带有数据库配置以及数据库用户和密码的 pgConfig 来连接到我们的 Postgres 数据库。
例如:
const configObject = {
host: cloudRunHost,
user: dbUser,
password: dbPassword,
database: dbName
}
async function connect() {
if(!client) {
const pgPool = new pg.Pool(configObject);
await pgPool.connect()
.then((result) => {
logger.info('Connected to DB')
client = result;
}).catch((err) => {
logger.error(err);
});
}
}
Run Code Online (Sandbox Code Playgroud)
我们希望应用本身使用Cloud SQL IAM 数据库身份验证连接到数据库
迄今为止:
error: empty password returned by client我们尝试从 configObject 中完全删除密码行,但没有帮助。关于为什么我的服务帐户可以直接访问数据库但 …
postgresql google-cloud-sql google-cloud-platform google-iam node-pg-pool
我正在尝试使用本地计算机(本地)中的 Python 代码并使用我的云 sql 实例的私有 IP 连接到云 sql postgreSQL 实例。
from google.cloud.sql.connector import Connector, IPTypes
import pg8000
import sqlalchemy
from sqlalchemy import text
def connect_with_connector_auto_iam_authn():
instance_connection_name = "connection name"
db_user = "SA name" # e.g. 'my-db-user'
db_name = "postgres" # e.g. 'my-database'
ip_type = IPTypes.PRIVATE
# initialize Cloud SQL Python Connector object
connector = Connector()
def getconn() -> pg8000.dbapi.Connection:
conn: pg8000.dbapi.Connection = connector.connect(
instance_connection_name,
"pg8000",
user=db_user,
password="",
db=db_name,
enable_iam_auth=True,
ip_type=ip_type
)
return conn
# The Cloud SQL Python Connector can …Run Code Online (Sandbox Code Playgroud) postgresql ×3
c# ×1
connector ×1
go ×1
google-iam ×1
mysql ×1
node-pg-pool ×1
pg8000 ×1
python ×1