问题标签 [aws-aurora-serverless]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-web-services - AWS Serverless Aurora - 与主节点的通信链路故障。找不到主节点的活动连接
部署在 Amazon ECS(使用 Fargate)上的应用程序在连接无服务器 Aurora DB 时遇到问题。我可以使用堡垒主机、具有公共 IP 和 SSH 隧道的同一 VPC 中的 EC2 实例成功连接到这个无服务器数据库。数据库连接对provisioned
EngineMode 成功,但serverless
它会引发以下错误:
数据库集群配置:我禁用了自动暂停功能并配置了集群,以便 2 个实例始终处于运行状态。我可以在 RDS(AWS 控制台)中看到 CPU 利用率和容量单元 2。
数据源配置:
已解决:
问题在于客户端用来建立数据库连接的用户的访问限制。
python - 错误:列是没有时区的时间戳类型,但表达式的类型是字符变化
我正在从 MS SQL db 表中读取 csv 文件导出并尝试将数据插入 PostgreSQL (Aurora Serverless) db。当我在 PostgreSQL 数据库中创建等效表时,我使用了我在网上找到的列类型映射来将 datetime (MS SQL) 映射到 timestamp(3) (PostgreSQL) 类型。但是,当我尝试将记录插入 Postgres db 时,我收到了该错误:
我的 MS SQL 表架构:
csv 文件包含:
PostgreSQL 表模式/创建语句:
在错误消息中,提示说我可能必须转换表达式,但我不确定我应该如何做到这一点,或者这是否是我情况下的最佳解决方案。
我正在使用以下脚本从 csv 文件加载数据并将其推送到 PostgreSQL 数据库:
更新:
如果我使用查询编辑器插入一条记录,例如insert into rigs_latest values (10000002, '2020-11-22 00:00:00');
它可以正常工作
这表明代码本身有问题
postgresql - 如何使用 Python boto3 客户端在 Aurora PostgreSQL 数据库中为“int”列元组插入“NULL”值
我有一个 CSV 文件(MS SQL 服务器表导出),我想将它导入 Aurora Serverless PostgreSQL 数据库表。我对 CSV 文件进行了基本预处理,以将其中的所有NULL
值(即''
)替换为"NULL"
. 该文件如下所示:
CSV 文件:
PostgreSQL 表具有以下架构:
我用来读取和插入 CSV 文件的代码如下:
但是,返回的错误表明存在类型不匹配:
有没有办法将 Aurora 配置为接受NULL
诸如 的类型的值int
?
python - 使用 AWS Aurora Serverless DATA API 调用 BatchExecuteStatement 操作时发生错误 (413)
我编写了一个 pythonc 脚本,它使用boto3
python 库来查询 Aurora Serverless (PostgreSQL) 数据库。我正在使用 DATA API 批量插入(我在多个批次中这样做)一个非常大的CSV
文件,其中包含超过 600 万条记录到数据库中。每条记录包含 37 列。当我在我的 PC 上运行脚本时(我已经设置了 AWS-CLI 凭证,以便我使用授权的用户与云中的 Aurora DB 对话)我能够成功插入几批包含 1800 个 SQL 插入语句的批次,然后我得到那个错误:
Python脚本:
据我了解,413
错误代码意味着“请求实体太大”,这表明我需要降低发送到数据库的批量大小(通过 DATA API),但我不明白为什么我能够发送几个在我开始收到上述错误之前批量 1800 条 SQL 语句。有什么建议吗?
另外,考虑到我需要推送/插入数据库的数据,在我的情况下,最好的解决方案是什么?
mysql - 从本地主机到极光无服务器
我正在研究从 rds mysql(正在使用并且内部有表和数据)切换到 aurora serverless mysql 以尝试花更少的钱,因为数据库用于很少的操作。我可以从我的电脑(dbeaver、mysql workbench 等)毫无问题地连接到 rds mysql,我可以设计表、查看数据、创建用户......现在,我已经创建了新的无服务器数据库并连接到同一个 vpc和第一个的 sec 组,但我无法从我的电脑连接到它。我在 aws guides 上读到有两种解决方案:
- 使用 ec2 来 ssh 隧道请求 --> 但它是一个付费软件解决方案;
- 使用 cloud9 并通过终端连接 --> 但以这种方式组织数据库并不像使用 gui 客户端那么简单。
出于这个原因,我非常明白无服务器目前不是一个好的解决方案。有什么想法或建议吗?
提前致谢
mysql - MySQL (Aurora) 使用 adddate 或 date-add 或 date-sub 更新时间戳表示语法错误
你们中的任何人都可以在这里找出 mySQL 更新语句的语法错误吗?
update table_name set start_time = DATE_ADD (start_time , INTERVAL 2 DAY) where start_time = '2020-12-08 10:47:00';
以上是简单的 mySQL 查询,将 start_time(时间戳)更新 2 天。
AFAIK,以上应该可以工作,而且并不复杂。但我收到语法错误,我无法理解为什么会出现语法错误。这是我得到的错误...
数据库错误代码:1064。消息:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 10 行的 ') where start_time = '2020-12-08 10:47:00'' 附近使用正确的语法
我还尝试过其他变体,例如...
数据库错误代码:1064。消息:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 3 行的 ') where start_time = '2020-12-08 10:47:00'' 附近使用正确的语法
如果我在 select 语句中使用 date_sub,
它确实像一个魅力。但我无法在 set =.... 的更新语句中使用它
我只是无法理解出了什么问题,并且很想知道语法有什么问题。你能建议吗?
amazon-web-services - 使用 AWS 数据 api 连接到 Aurora Postgres 数据库的秘密字符串应该采用什么格式?
首先,我所做的一切都来自 CLI。我没有使用网络界面的权限。我正在尝试使用 AWS 数据 API 调用现有的 Aurora Postrgres 数据库。我正在按照此页面上的说明进行操作:
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html
我被困在“在 AWS Secrets Manager 中存储数据库凭证”部分。
我知道如何创建一个秘密(aws secretsmanager create-secret --name test2 --secret-string "{"Key":"test","Value":"12345"}")但我不知道是什么--secret-string 应该存储数据库凭据。
所有文档都说“使用 Secrets Manager 创建一个包含 Aurora 数据库集群凭证的密钥。”,但没有说明凭证应该采用什么格式。
从我的 IDE 连接到数据库时,我需要包含主机、端口、用户、密码和数据库名称。我需要将所有这些都包含在秘密字符串中吗?
"{"主机":"我的主机","端口":"12345","用户":"我的用户","密码":"我的密码","db_name":"我的数据库名称"}"
python - 如何使用 SQLAlchemy 为 Aurora Serverless 和 DataAPI 生成 python 数据库模型?
我一直在试图弄清楚是否有任何方法可以为通过 DataAPI 使用的 Aurora Serverless (Postgresql) DB 提供 ORM 功能(尤其是代码模型生成)?最终,我想避免在我们的 Lambda 中使用原始 sql 字符串查询。
我尝试将sqlacodegen与sqlalchemy -aurora-data-api(在sqlalchemy之上工作)结合使用,但我不断收到错误消息:
用方言:
botocore.exceptions.NoRegionError:您必须指定一个区域。
没有方言:
sqlalchemy.exc.OperationalError:(psycopg2.OperationalError)无法连接到服务器:连接超时(0x0000274C/10060)
前者似乎暗示必须将参数传递给调用,但 sqlacodegen 不接受任何 kwargs afaik。后者只是无法连接,并且psycopg2
告诉我它只是没有使用正确的方言。
amazon-web-services - 为什么我在尝试从 lambda 而不是从查询编辑器访问极光无服务器数据库时得到 403?
我已经启动了一个极光无服务器 posgres 兼容数据库,我正在尝试从 lambda 函数连接到它,但AccessDenied
出现错误:
AccessDeniedException:
状态代码:403,请求 ID:2b19fa38-af7d-4f4a-aaa5-7d068e92c901
细节:
- 如果我使用 lambda 尝试使用的相同 secret-arn 和数据库名称,我可以通过查询编辑器手动连接和查询数据库。我已经三重检查了arns是否正确
- 我的 lambdas 不在 vpc 中,但正在使用数据 api。RDS 集群在默认 vpc 中
- 我暂时授予了我的 lambdas 管理员访问权限,以便我知道这不是 lambda 方面的基于策略的问题
- Cloudwatch 不包含有关错误的任何其他详细信息
- 我可以从我的个人计算机的命令行(不在 vpc 上)查询数据库
有什么建议么?也许有一种方法可以从错误中获得更好的细节?