diff --git a/builtin/providers/aws/resource_aws_db_instance.go b/builtin/providers/aws/resource_aws_db_instance.go index 55eb85cd9..9af762f48 100644 --- a/builtin/providers/aws/resource_aws_db_instance.go +++ b/builtin/providers/aws/resource_aws_db_instance.go @@ -66,6 +66,13 @@ func resourceAwsDbInstance() *schema.Resource { Computed: true, }, + "character_set_name": &schema.Schema{ + Type: schema.TypeString, + Optional: true, + Computed: true, + ForceNew: true, + }, + "storage_encrypted": &schema.Schema{ Type: schema.TypeBool, Optional: true, @@ -504,6 +511,10 @@ func resourceAwsDbInstanceCreate(d *schema.ResourceData, meta interface{}) error } + if attr, ok := d.GetOk("character_set_name"); ok { + opts.CharacterSetName = aws.String(attr.(string)) + } + if attr, ok := d.GetOk("maintenance_window"); ok { opts.PreferredMaintenanceWindow = aws.String(attr.(string)) } @@ -651,6 +662,10 @@ func resourceAwsDbInstanceRead(d *schema.ResourceData, meta interface{}) error { d.Set("db_subnet_group_name", v.DBSubnetGroup.DBSubnetGroupName) } + if v.CharacterSetName != nil { + d.Set("character_set_name", v.CharacterSetName) + } + if len(v.DBParameterGroups) > 0 { d.Set("parameter_group_name", v.DBParameterGroups[0].DBParameterGroupName) } diff --git a/website/source/docs/providers/aws/r/db_instance.html.markdown b/website/source/docs/providers/aws/r/db_instance.html.markdown index 05b72191f..c25f345c1 100644 --- a/website/source/docs/providers/aws/r/db_instance.html.markdown +++ b/website/source/docs/providers/aws/r/db_instance.html.markdown @@ -98,11 +98,13 @@ database, and to use this value as the source database. This correlates to the * `license_model` - (Optional, but required for some DB engines, i.e. Oracle SE1) License model information for this DB instance. * `auto_minor_version_upgrade` - (Optional) Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Defaults to true. * `allow_major_version_upgrade` - (Optional) Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible. -* `monitoring_role_arn` - (Optional) The ARN for the IAM role that permits RDS to send -enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) +* `monitoring_role_arn` - (Optional) The ARN for the IAM role that permits RDS to send +enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances. * `monitoring_interval` - (Optional) The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60. -* `kms_key_id` - (Optional) The ARN for the KMS encryption key. +* `kms_key_id` - (Optional) The ARN for the KMS encryption key. +* `character_set_name` - (Optional) The character set name to use for DB encoding in Oracle instances. This can't be changed. +[Oracle Character Sets Supported in Amazon RDS](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.OracleCharacterSets.html) * `tags` - (Optional) A mapping of tags to assign to the resource. ~> **NOTE:** Removing the `replicate_source_db` attribute from an existing RDS @@ -132,5 +134,9 @@ The following attributes are exported: * `username` - The master username for the database * `storage_encrypted` - Specifies whether the DB instance is encrypted +On Oracle instances the following is exported additionally: + +* `character_set_name` - The character set used on Oracle instances. + [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Replication.html [2]: https://docs.aws.amazon.com/fr_fr/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html