Online Copy of an Unlimited Storage Database
Warning
SingleStore 9.0 gives you the opportunity to preview, evaluate, and provide feedback on new and upcoming features prior to their general availability. In the interim, SingleStore 8.9 is recommended for production workloads, which can later be upgraded to SingleStore 9.0.
Note
This operation is available from version 7.
The following steps can be used to copy an unlimited storage database whose long-term historical contents are kept on external object storage, such as Amazon S3.
Step 1: Create a milestone in the source database.
This flushes all data prior to that point to external storage.
Step 2: Copy the bucket containing the database files to a new location.<root-path>
.
The <root-path>
is the path used when the database was created, which should include a bucket and optionally a path within the bucket.
Step 3: Delete the lock file(s) that are located under the <root-path>/<storage-id>/storage_
path.
Remove all files under this path.<storage-id>
is a two-part number of the format <part1>_
, which can be manually obtained from the information_
table.
Step 4: Attach the new copy of the bucket at the desired milestone.
Example:
Suppose in the database DB1, a user accidentally deleted all rows from the table F for CUSTOMER_
To recover these rows online, do the following:
1.
CREATE MILESTONE "copy_point";
2.
3.
4.
ATTACH DATABASE DB1 AS DB2 AT TIME '2022-02-10 12_59_00';
5.
INSERT INTO db1.f SELECT * FROM DB2.f WHERE customer_id = 1000;
Last modified: February 20, 2025