1 回答
- 最新
- 投票最多
- 评论最多
0
【以下的回答经过翻译处理】 1. 为了获取连接到的读取器或写入器实例的名称,您可以使用以下命令:(请注意,您必须使用集群端点进行连接以获取群集名称)
[userr@machine]$ psql -h database-3.cluster-xxxxx.region.rds.amazonaws.com -U postgres -d postgres
postgres=> SELECT :'HOST';
database-3.cluster-xxxxx.region.rds.amazonaws.com
-- 上述输出可以进一步删减为仅包含群集名称
postgres=> SELECT SPLIT_PART(:'HOST','.',1);
database-3
-- 要在函数中使用上述变量,可以使用以下解决方法,因为在psql中 ":" 被视为变量。
postgres=>create table host_name_tab (ht varchar); postgres=> insert into host_name_tab select :'HOST';
postgres=> create or replace function get_host() returns varchar language plpgsql as $$ declare host_name varchar; begin SELECT SPLIT_PART(ht,'.',1) into host_name from host_name_tab ; return host_name; end; $$;
postgres=> select get_host(); get_host
database-3 (1 row)
- 如果要获取连接到的实例名称,您可以使用以下命令:
postgres=> select aurora_db_instance_identifier() as host_name; host_name
database-3-instance-1-ap-south-1a (1 row)
请注意,由于这是与开发相关的查询,可以使用不同的逻辑来实现。
相关内容
- AWS 官方已更新 2 年前
- AWS 官方已更新 1 年前