Background is an S3-compatible storage service (see that can be used as a backup destination (remote archive volume) for on-premise Exasol setups. Unfortunately, as of Exasol 6.2, there remains a minor incompatibility that requires patching the server in order for Exasol to correctly recognize it. The steps below walk you through making your service Exasol-compatible.


  1. Have installed in a location that Exasol has access to
  2. Ability to reconfigure, recompile, and redeploy
  3. Ability to add DNS aliases
  4. Have a bucket and access/secret keys setup

How to use as an Exasol remote archive volume

  1. Enable SSL in and have it listen on port 443 (Exasol will ignore any other port specified)
  2. Assuming that your server is and it has a bucket named backups, create a DNS alias which also resolves to the same IP as
  3. In the startup script set the MINIO_DOMAIN ENV variable to  This will cause to extract the bucket name from the virtual host passed to it instead of extracting it from the URL path (which is the default)
  4. In the startup script set the MINIO_REGION_NAME ENV variable to us-east-1 (or other region of your choice). This will cause to include that in all HTTP response headers.
  5. Check out the source code from and apply the patch below. See the repository's Dockerfile for how to rebuild it: 
    --- /cmd/api-headers.go
    +++ /cmd/api-headers.go
    @@ -51,7 +51,8 @@ func setCommonHeaders(w http.ResponseWriter) {
        // Set `x-amz-bucket-region` only if region is set on the server
        // by default minio uses an empty region.
        if region := globalServerRegion; region != "" {
    -       w.Header().Set(xhttp.AmzBucketRegion, region)
    +       h := strings.ToLower(xhttp.AmzBucketRegion)
    +       w.Header()[h] = append(w.Header()[h], region)
        w.Header().Set(xhttp.AcceptRanges, "bytes")
  6. Redeploy your server with the patch
  7. In the Exasol ExaOperation interface for adding a remote archive volume
    • Set the Archive URL to
    • Specify the access and secret keys in the username/password fields
    • Specify an Option of s3 (and any other applicable options)

Additional References