#[non_exhaustive]
pub struct StartExportTaskInput { pub export_task_identifier: Option<String>, pub source_arn: Option<String>, pub s3_bucket_name: Option<String>, pub iam_role_arn: Option<String>, pub kms_key_id: Option<String>, pub s3_prefix: Option<String>, pub export_only: Option<Vec<String>>, }

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§export_task_identifier: Option<String>

A unique identifier for the export task. This ID isn't an identifier for the Amazon S3 bucket where the data is to be exported.

§source_arn: Option<String>

The Amazon Resource Name (ARN) of the snapshot or cluster to export to Amazon S3.

§s3_bucket_name: Option<String>

The name of the Amazon S3 bucket to export the snapshot or cluster data to.

§iam_role_arn: Option<String>

The name of the IAM role to use for writing to the Amazon S3 bucket when exporting a snapshot or cluster.

In the IAM policy attached to your IAM role, include the following required actions to allow the transfer of files from Amazon RDS or Amazon Aurora to an S3 bucket:

  • s3:PutObject*

  • s3:GetObject*

  • s3:ListBucket

  • s3:DeleteObject*

  • s3:GetBucketLocation

In the policy, include the resources to identify the S3 bucket and objects in the bucket. The following list of resources shows the Amazon Resource Name (ARN) format for accessing S3:

  • arn:aws:s3:::your-s3-bucket

  • arn:aws:s3:::your-s3-bucket/*

§kms_key_id: Option<String>

The ID of the Amazon Web Services KMS key to use to encrypt the data exported to Amazon S3. The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. The caller of this operation must be authorized to run the following operations. These can be set in the Amazon Web Services KMS key policy:

  • kms:Encrypt

  • kms:Decrypt

  • kms:GenerateDataKey

  • kms:GenerateDataKeyWithoutPlaintext

  • kms:ReEncryptFrom

  • kms:ReEncryptTo

  • kms:CreateGrant

  • kms:DescribeKey

  • kms:RetireGrant

§s3_prefix: Option<String>

The Amazon S3 bucket prefix to use as the file name and path of the exported data.

§export_only: Option<Vec<String>>

The data to be exported from the snapshot or cluster. If this parameter isn't provided, all of the data is exported.

Valid Values:

  • database - Export all the data from a specified database.

  • database.table table-name - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • database.schema schema-name - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

  • database.schema.table table-name - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

Implementations§

source§

impl StartExportTaskInput

source

pub fn export_task_identifier(&self) -> Option<&str>

A unique identifier for the export task. This ID isn't an identifier for the Amazon S3 bucket where the data is to be exported.

source

pub fn source_arn(&self) -> Option<&str>

The Amazon Resource Name (ARN) of the snapshot or cluster to export to Amazon S3.

source

pub fn s3_bucket_name(&self) -> Option<&str>

The name of the Amazon S3 bucket to export the snapshot or cluster data to.

source

pub fn iam_role_arn(&self) -> Option<&str>

The name of the IAM role to use for writing to the Amazon S3 bucket when exporting a snapshot or cluster.

In the IAM policy attached to your IAM role, include the following required actions to allow the transfer of files from Amazon RDS or Amazon Aurora to an S3 bucket:

  • s3:PutObject*

  • s3:GetObject*

  • s3:ListBucket

  • s3:DeleteObject*

  • s3:GetBucketLocation

In the policy, include the resources to identify the S3 bucket and objects in the bucket. The following list of resources shows the Amazon Resource Name (ARN) format for accessing S3:

  • arn:aws:s3:::your-s3-bucket

  • arn:aws:s3:::your-s3-bucket/*

source

pub fn kms_key_id(&self) -> Option<&str>

The ID of the Amazon Web Services KMS key to use to encrypt the data exported to Amazon S3. The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. The caller of this operation must be authorized to run the following operations. These can be set in the Amazon Web Services KMS key policy:

  • kms:Encrypt

  • kms:Decrypt

  • kms:GenerateDataKey

  • kms:GenerateDataKeyWithoutPlaintext

  • kms:ReEncryptFrom

  • kms:ReEncryptTo

  • kms:CreateGrant

  • kms:DescribeKey

  • kms:RetireGrant

source

pub fn s3_prefix(&self) -> Option<&str>

The Amazon S3 bucket prefix to use as the file name and path of the exported data.

source

pub fn export_only(&self) -> &[String]

The data to be exported from the snapshot or cluster. If this parameter isn't provided, all of the data is exported.

Valid Values:

  • database - Export all the data from a specified database.

  • database.table table-name - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • database.schema schema-name - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

  • database.schema.table table-name - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .export_only.is_none().

source§

impl StartExportTaskInput

source

pub fn builder() -> StartExportTaskInputBuilder

Creates a new builder-style object to manufacture StartExportTaskInput.

Trait Implementations§

source§

impl Clone for StartExportTaskInput

source§

fn clone(&self) -> StartExportTaskInput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for StartExportTaskInput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for StartExportTaskInput

source§

fn eq(&self, other: &StartExportTaskInput) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for StartExportTaskInput

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more