DETACH DATABASE
Note
Prior to using this command, the enable_bottomless
engine variable must be set to ON
(the default value).
Takes an unlimited storage database offline. The data remains on remote storage and should be deleted separately if you wish to completely remove it.
It removes the reference to the detached database from the cluster. Hence your ATTACH
command needs to specify the location where to attach from.
Check here for the permissions required to use this command.
Syntax
DETACH DATABASE remote_database_name [AT MILESTONE "milestone_name" | FORCE]
Arguments
milestone_name
A quoted string that is the milestone to detach the database at.
Remarks
If
FORCE
is specified, the following applies:The database is dropped from the SingleStoreDB cluster. All data in the detached database that is stored locally in the cluster is deleted (and not uploaded to remote storage). However,
FORCE
does not remove the corresponding database files from the remote object store; you should remove these files manually, if desired.
If
FORCE
is not specified, the following apply:A milestone (a restore point) is created. The CREATE MILESTONE command is run implicitly.
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.
After detaching a database, you can reattach the database using ATTACH DATABASE. The reattach can be done optionally at a milestone or a point in time, and with the same or a different database name.
This command cannot be run on system databases.
See the Permission Matrix for the required permission.
Example
DETACH DATABASE db AT MILESTONE "m";