Prior to using this command, the enable_bottomless engine variable must be set to ON (the default value).


This command is not available in all editions of SingleStore. For more information, see SingleStore Editions.

Records a milestone, which is a named point to which you can restore an unlimited storage database. Restoring to the milestone will bring the database to the point in time when the milestone was created.

Following the execution of CREATE MILESTONE, the database can be restored at the milestone by running DETACH DATABASE and then ATTACH DATABASE.

You must have CREATE TABLE permission in a database to create a milestone.


CREATE MILESTONE [milestone_name] [FOR remote_database_name]



A quoted string that is the name of the milestone to create.


  • While the milestone is being created, SingleStore uploads the remote database's local cluster data to remote storage that has not yet been synced.

  • If milestone_name is not specified, a name containing the current timestamp is automatically generated.

  • If milestone_name already exists, the restore point used by the existing milestone is overwritten with the restore point of the new milestone.

  • If remote_database_name is not specified, the context database (specified with the USE command) is used.

  • Refer to the Permission Matrix for the required permission.


The following example creates a new milestone on the existing unlimited storage database bottomless_db:

CREATE MILESTONE "m" FOR bottomless_db;

For a basic walkthrough of creating milestones, see Attach an Unlimited Storage Database Using Point-in-Time Recovery (PITR).

Last modified: January 9, 2023

Was this article helpful?