# IInstanceEngine

Interface representing a database instance (as opposed to cluster) engine.

Extends: IInstanceEngine
Extends: IEngine

- Source: [`aws-rds/lib/instance-engine.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0/packages/aws-cdk-lib/aws-rds/lib/instance-engine.ts#L96)

## Properties

- `defaultUsername`: string — The default name of the master database user if one was not provided explicitly.

  The global default of 'admin' will be used if this is `undefined`.
  Note that 'admin' is a reserved word in PostgreSQL and cannot be used.

- `engineFamily`: string — The family this engine belongs to, like "MYSQL", or "POSTGRESQL".

  **Default:** the engine doesn't belong to any family

  This property is used when creating a Database Proxy.
  Most engines don't belong to any family
  (and because of that, you can't create Database Proxies for their Clusters or Instances).

- `engineType`: string — The type of the engine, for example "mysql".

- `engineVersion`: [EngineVersion](/cdk/api/v2/docs/aws-cdk-lib.aws_rds.EngineVersion.html) — The exact version of the engine that is used, for example "5.1.42".

  **Default:** use the default version for this engine type

- `multiUserRotationApplication`: [SecretRotationApplication](/cdk/api/v2/docs/aws-cdk-lib.aws_secretsmanager.SecretRotationApplication.html) — The application used by this engine to perform rotation for a multi-user scenario.

- `parameterGroupFamily`: string — The family to use for ParameterGroups using this engine.

  **Default:** the ParameterGroup family is not known (which means the major version of the engine is also not known)

  This is usually equal to "<engineType><engineMajorVersion>",
  but can sometimes be a variation of that.
  You can pass this property when creating new ParameterGroup.

- `singleUserRotationApplication`: [SecretRotationApplication](/cdk/api/v2/docs/aws-cdk-lib.aws_secretsmanager.SecretRotationApplication.html) — The application used by this engine to perform rotation for a single-user scenario.

- `supportsReadReplicaBackups`: boolean = false — Whether this engine supports automatic backups of a read replica instance.

## Methods

- `bindToInstance(scope: Construct, options: InstanceEngineBindOptions): InstanceEngineConfig` — Method called when the engine is used to create a new instance.
