Commit log archive configuration
Cassandra provides commitlog archiving and point-in-time recovery.
You configure this feature in the commitlog_archiving.properties configuration file, which is located in the following directories:
- Cassandra Packaged installs: /etc/cassandra/conf
- Cassandra Binary installs: install_location/conf
- DataStax Enterprise Packaged installs: /etc/dse/cassandra
- DataStax Enterprise Binary installs: install_location/resources/cassandra/conf
The commands archive_command and restore_command expect only a single command with arguments. STDOUT and STDIN or multiple commands cannot be executed. To workaround, you can script multiple commands and add a pointer to this file. To disable a command, leave it blank.
Archive a commitlog segment:
Command archive_command= Parameters <path> Fully qualified path of the segment to archive. <name> Name of the commit log. Example archive_command=/bin/ln <path> /backup/<name>
Restore an archived commitlog:
Command restore_command= Parameters <from> Fully qualified path of the an archived commitlog segment from the <restore_directories>. <to> Name of live commit log directory. Example restore_command=cp -f <from> <to>
Set the restore directory location:
Command restore_directories= Format restore_directories=<restore_directory location>
Restore mutations created up to and including the specified timestamp:
Restore stops when the first client-supplied timestamp is greater than the restore point timestamp. Because the order in which Cassandra receives mutations does not strictly follow the timestamp order, this can leave some mutations unrecovered.
Command restore_point_in_time= Format <timestamp> (YYYY:MM:DD HH:MM:SS) Example restore_point_in_time=2013:12:11 17:00:00