In AWS RDS, the endpoint format is my-db-name.AWSIDENTIFIER
.region.rds.amazonaws.com
AWSIDENTIFIER
is unique. It’s an identifier generated by AWS specific to your AWS account and region.
It stays consistent across all RDS instances within the same account and region.
Endpoint Structure: An RDS endpoint typically follows the pattern my-db-name.AWSIDENTIFIER
.region.rds.amazonaws.com. Here, my-db-name is the database instance identifier, AWSIDENTIFIER
is a unique alphanumeric string and region is… region.
Unique Identifier (AWSIDENTIFIER
): This segment is an identifier generated by AWS. It’s unique to each AWS account within a specific region and remains the same for all RDS instances under that account in that region. They don’t share the algorithm publicly.
Predictability: You can’t predict or choose the AWSIDENTIFIER
value before creating an RDS instance. But, once an instance is created in a region, this identifier becomes known and remains the same for all future instances in that account and region.
Consistency: If you delete an RDS instance and later create a new one with the same name in the same account and region, the endpoint will have the same AWSIDENTIFIER
identifier. This helps with maintaining stable connection strings.
Even if you can’t predict the AWSIDENTIFIER
identifier beforehand, you can programmatically get endpoint details after creating an instance using AWS SDKs or CLI tools.
To simplify data recovery or architecture changes, it could be worth renaming your RDS instance the same as the original instance, this means you don’t need to update your application with a new endpoint 🤷🏽♂️