gpt4 book ai didi

amazon-rds - 使用最新引擎版本创建 RDS 数据库集群

转载 作者:行者123 更新时间:2023-12-01 16:30:26 29 4
gpt4 key购买 nike

来自文档 https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html ,CreateDBCluster 可以指定引擎版本,该字段不是必填字段。如果未设置该字段,是否会自动获取最新版本?如果不是,我怎么知道在创建数据库集群时哪个版本是最新的?

最佳答案

问:如果省略引擎版本会发生什么?

如果您未指定 EngineVersion,则使用“默认”版本。比如此时,2022年5月,最新的是 13.6,但默认值为 13.4。因此,要获得相当新且稳定的版本,您可以省略该参数:

aws rds create-db-cluster --db-cluster-identifier mynewcluster001-cli-demo --master-username postgres --master-user-password YOUR_PASSWORD --engine aurora-postgresql

  • 注1:上面的代码不包含任何参数组或安全组。它将使用所有这些值的默认值。
  • 注意 2:您可以使用 AWS 云控制台运行这些示例。

问:如何确定 RDS 引擎的最新版本?

方法 1(最短):

aws rds describe-db-engine-versions --engine aurora-postgresql --query 'max(DBEngineVersions[*].EngineVersion)'

返回: 13.6(截至 2022 年 5 月)
文档是here .

提示:如果您需要使用输出,一种选择是使用方便的 Linux backtick来输出值。这不适用于 Windows,但您可以在 AWS Cloud Console 上使用它。

方法 2(使用脚本):

aws rds describe-db-engine-versions --engine aurora-postgresql --query 'DBEngineVersions[*].EngineVersion' | grep -o -E '[0-9.]+' | sort -r | head -1
返回: 13.6

您可以捕获该值并在创建集群时使用它。 (或者,如果使用 Java 库,则解析来自DescribeDbEngineVersions 的 JSON 结果。)

解释上面的第二种方法:

  • grep -o -E '[0-9.]+'删除除数字和“.”之外的所有字符
  • sort -r对行进行排序。 “-r”以相反的顺序排列。
  • head -1这将返回第一行。

请记住,还有其他方法可以做到这一点。我选择分享两种我通常认为使用 AWS CLI 进行解析很方便的方法。

工作原理:列出所有版本

有关所有有效引擎版本的列表,请使用 DescribeDBEngineVersions行动。 https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBEngineVersions.html

返回 JSON 版本数组的基本示例: aws rds describe-db-engine-versions --engine aurora-postgresql --query 'DBEngineVersions[*].EngineVersion'

返回:

[
"10.14",
"10.14",
"10.16",
"10.17",
"10.18",
"10.19",
"10.20",
"11.9",
"11.11",
"11.12",
"11.13",
"11.14",
"11.15",
"12.4",
"12.6",
"12.7",
"12.8",
"12.9",
"12.10",
"13.3",
"13.4",
"13.5",
"13.6"
]

查找最新的“可升级”版本

从技术上讲,如果您使用它来更新服务器,则最新版本可能不是可升级的最新版本。为了准确起见,您需要从DescribeDBEngineVersions 中解析当前引擎版本的 JSON 树。

但是,如果您确信自己使用的是最新版本,可以使用以下脚本来查找可用于升级的最高版本: aws rds describe-db-engine-versions --engine aurora-postgresql --query 'DBEngineVersions[*].ValidUpgradeTarget[*].EngineVersion' | grep -o -E '[0-9.]+' | sort -r | head -1

关于amazon-rds - 使用最新引擎版本创建 RDS 数据库集群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62052917/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com