16.15 Cloud Storage Options

These options are for using cloud storage for single-file operations. See Section 4.3.1.3, “Backing Up to Cloud Storage”, and Section 5.1.5, “Restoring a Backup from Cloud Storage to a MySQL Server”, for more information and instructions on using cloud storage with MySQL Enterprise Backup.

  • --cloud-service=SERVICE

    Cloud service for data backup or restoration. Currently, there are two types of cloud storage services supported by mysqlbackup, represented by the following values for the options:

    • openstack: OpenStack Swift or compatible object storage services (for example, Oracle Cloud Infrastructure Object Storage and Oracle Cloud Infrastructure Object Storage Classic).

    • s3: Amazon Simple Storage Service (S3).

  • --cloud-trace

    Print trace information for cloud operations. It works independently of --trace, which specifies the trace level for the non-cloud operations of mysqlbackup. Any non-zero value for the option enables the trace function.

    Default value is 0.

  • --cloud-proxy=proxy-url:port

    Proxy address and port number for overriding the environment's default proxy settings for accessing a cloud storage service.

    Note

    The list-image operation can be performed on a cloud backup only if the cloud proxy supports HTTP range headers.

  • --cloud-ca-info=PATH

    Absolute path to the CA bundle file for host authentication for SSL connections. When the option is specified, the usage of the CA bundle file is preferred over the usage of individual .pem files for host authentication.

  • --cloud-ca-path=PATH

    CA certificate directory, in addition to the system's default folder.

  • --cloud-buffer-size=MB

    (For release 4.1.1 and later) Size of the buffer for cloud operations in megabytes. mysqlbackup accumulates data up to the size specified by this option before initiating a cloud transfer. The value has to be between 16 to 4096.

    Default: 64

  • Options used only for OpenStack Swift or compatible object storage services (using them when the argument for --cloud-service is anything other than openstack will cause mysqlbackup to throw an error):

    • --cloud-container=SWIFT_CONTAINER

      The Swift container for the backup image. For Oracle Cloud Infrastructure (OCI) Object Storage, this is the object storage bucket.

    • --cloud-object=SWIFT_OBJECT

      The Swift object for the backup image. Note that names of objects within the same container (or bucket, for OCI Object Storage) have to be unique.

    • --cloud-user-id=SWIFT_USER_ID

      User ID for accessing Swift. The user credentials are authenticated by the Swift TempAuth identity system when the --cloud-tempauth-url option is used, by the OpenStack Keystone identity service when the --cloud-identity-url option is used, and by HTTP Basic Authentication when the --cloud-basicauth-url option is used.

    • --cloud-password=SWIFT_PASSWORD

      Password for accessing Swift for the user specified by the --cloud-user-id option. The user credentials are authenticated by the Swift TempAuth identity system when the --cloud-tempauth-url option is used, by the OpenStack Keystone identity service when the --cloud-identity-url option is used, and by HTTP Basic Authentication when the --cloud-basicauth-url option is used.

    • --cloud-tempauth-url=SWIFT_TEMPAUTH-URL

      The TempAuth URL for authenticating user credentials.

    • --cloud-basicauth-url=SWIFT_BASICAUTH-URL

      (For release 4.1.1 and later) The URL for HTTP Basic Authentication.

    • --cloud-storage-url=SWIFT_STORAGE-URL

      (For release 4.1.2 and later) The URL for Oracle Cloud Infrastructure Object Storage when using OAuth for client authentication.

    • --cloud-oauth-token=SWIFT_OAUTH-TOKEN

      (For release 4.1.2 and later) The OAuth token for Oracle Cloud Infrastructure Object Storage access. The option value must be in one of the following formats:

      • --cloud-oauth-token=oauth_token, where oauth_token is the OAuth token itself

      • --cloud-oauth-token=file:oauth_filepath, where oauth_filepath points to a file containing only the OAuth token.

    • --cloud-identity-url=SWIFT_KEYSTONE-URL

      The URL of the Keystone identity service, when it is used for authenticating user credentials.

    • --cloud-tenant=SWIFT_KEYSTONE-TENANT

      The Keystone tenant for the user specified by --cloud-user-id, when the Keystone identity service is used for authenticating user credentials.

    • --cloud-region=SWIFT_KEYSTONE-REGION

      The Keystone region for the user specified by --cloud-user-id, when the Keystone identity service is used for authenticating user credentials.

    • --cloud-chunked-transfer=VALUE

      (For release 4.1.1 and later) Use chunked transfer with Swift service.

      If the option is set to true, backups are transferred and stored as Dynamic Large Objects (DLOs), for which multiple file segments are considered as a single file. Each backup larger than 5GB is split into multiple parts with names in the form of <object_name>_part_<number>. See the OpenStack documentation for details.

      If the option is set to false, mysqlbackup uploads the backup in segments in the size of the buffer, and the maximum number of segments a backup can have is determined by the Swift service.

      Default: true

      Warning

      Set the option to false if chunked transfer is not supported by your cloud storage; otherwise, the mysqlbackup operation may fail.

    One and only one of --cloud-tempauth-url, --cloud-identity-url, --cloud-basicauth-url, or --cloud-storage-url should be used when accessing a Swift service, or mysqlbackup will throw an error.

  • Options used only for Amazon S3 (using them when the argument for --cloud-service is anything other than s3 will cause mysqlbackup to throw an error):

    • --cloud-bucket=S3_BUCKET

      The storage bucket on Amazon S3 for the backup image.

      In order to perform cloud backups and restores with the bucket, the user identified by the --cloud-access-key-id option must have at least the following permissions on the bucket:

      • s3:ListBucket: For listing information on items in the bucket.

      • s3:ListBucketMultipartUploads: For listing multipart uploads in progress to the bucket.

      • s3:GetObject: For retrieving objects from the bucket.

      • s3:PutObject: For adding objects to the bucket.

    • --cloud-object-key=S3_OBJECT_KEY

      The Amazon S3 object key for the backup image.

    • --cloud-access-key-id=S3_KEY-ID

      AWS access key ID for logging onto Amazon S3.

    • --cloud-secret-access-key=S3_ACCESS-KEY

      AWS secret access key for the AWS access key id specified with --cloud-access-key-id.

    • --cloud-aws-region=S3_REGION

      Region for Amazon Web Services that mysqlbackup accesses for S3.