A reference for the `aria_s3_copy` tool, which is used to manually copy Aria tables to and from S3 storage for testing and data migration.
aria_s3_copy is a tool for copying an Aria table to and from S3.
The Aria table must be non transactional and have ROW_FORMAT=PAGE.
For aria_s3_copy to work reliably, the table should not be changed by the MariaDB server during the copy, and one should have first performed FLUSH TABLES to ensure that the table is properly closed.
Example of properly created Aria table:
The following code will copy an existing Aria table named test1 to S3.
If the --database option is not given, then the directory name where the table files exist are used as the database.
When using --verbose, aria_s3_copy will write a dot for each #/79 part of the file copied.
. This pages has examples of .my.cnf entries for using aria_s3_copy.
This page is licensed: CC BY-SA / Gnu FDL
-c, --compress
Use compression
-o, --op=name
Operation to execute. One of 'from_s3', 'to_s3' or 'delete_from_s3'
-d, --database=name
Database for copied table (second prefix). If not given, the directory of the table file is used
-B, --s3-block-size=#
Block size for data/index blocks in s3
-L, --s3-protocol-version=name
Protocol used to communication with S3. One of "Amazon" or "Original".
-f, --force
Force copy even if target exists
-v, --verbose
Write more information
-V, --version
Print version and exit.
-#, --debug[=name]
Output debug log. Often this is 'd:t:o,filename'.
--s3-debug
Output debug log from marias3 to stdout
-?, --help
Display this help and exit.
-k, --s3-access-key=name
AWS access key ID
-r, --s3-region=name
AWS region
-K, --s3-secret-key=name
AWS secret access key ID
-b, --s3-bucket=name
AWS prefix for tables
-h, --s3-host-name=name
Host name to S3 provider
-p, --s3-port=#
Port number to connect to (0 means use default)
-P, --s3-use-http
If true, force use of HTTP protocol
CREATE TABLE test1 (a INT) transactional=0 row_format=PAGE engine=aria;[aria_s3_copy]
s3-bucket=mariadb
s3-access-key=xxxx
s3-secret-key=xxx
s3-region=eu-north-1
#s3-host-name=s3.amazonaws.com
#s3-protocol-version=Amazon
verbose=1
op=toshell> aria_s3_copy --force --op=to --database=foo --compress --verbose --s3_block_size=4M test1
Delete of aria table: foo.test1
Delete of index information foo/test1/index
Delete of data information foo/test1/data
Delete of base information and frm
Copying frm file test1.frm
Copying aria table: foo.test1 to s3
Creating aria table information foo/test1/aria
Copying index information foo/test1/index
.
Copying data information foo/test1/data
.