Cla*_*ied 2 java amazon-web-services amazon-rds
我正在查看AWS API,我似乎无法找到一种方法来帮助我获取有关现有RDS数据库的信息.我还尝试使用一种获取所有RDS数据库列表的方法,但也失败了.
我看了两种方法,显然它们不是我正在寻找的,或者我使用它们是错误的.
方法1:我查看了ModifyDBInstanceRequest,看看我是否可以指定现有数据库的名称,以及是否可以查询它的属性(mysql版本,存储大小等).以下代码段没有像我一样预期.ad-dash-test是RDS中的现有数据库.当我运行我的代码时,它表示引擎版本为null,即使这是一个现有的数据库,我通过其数据库实例名称指定它.
ModifyDBInstanceRequest blah = new ModifyDBInstanceRequest("ad-dash-test");
System.out.println("the engine ver is " + blah.getEngineVersion());
Run Code Online (Sandbox Code Playgroud)
方法2:我尝试使用DescribeDBInstancesResult方法,但它看起来像是用于新创建的RDS数据库,而不是现有的RDS数据库.
DescribeDBInstancesResult db = new DescribeDBInstancesResult();
List<DBInstance> list = db.getDBInstances();
System.out.println("list length = " + list.size());
Run Code Online (Sandbox Code Playgroud)
返回的列表长度为0,我有8个RDS实例.
我没有在亚马逊的SDK for RDS中找到任何示例,并且使用我的逻辑和API文档似乎没有帮助.希望有人可以指出我正确的方向.在此先感谢您的帮助.
在您的两种方法中,您只是构建一个Request对象,而您永远不会将请求发送给AWS.在第二个示例中尝试以下操作:
// Instantiating rdsClient directly is deprecated, use AmazonRDSClientBuilder.
// AmazonRDSClient rdsClient = new AmazonRDSClient(/*add your credentials and the proper constructor overload*/);
AmazonRDS rdsClient = AmazonRDSClientBuilder.defaultClient();
DescribeDBInstancesRequest request = new DescribeDBInstancesRequest();
DescribeDBInstancesResult result = rdsClient.describeDBInstances(request);
List<DBInstance> list = result.getDBInstances();
System.out.println("list length = " + list.size());
Run Code Online (Sandbox Code Playgroud)
方法1(用于修改实例)的示例应该类似.
| 归档时间: |
|
| 查看次数: |
4026 次 |
| 最近记录: |