Disable Persistence


Is it possible to run MemSQL purely in-memory, and not have any backing persistence?

My use case is to use this as a cache for sensitive information that is persisted elsewhere and encrypted there. As a requirement, this information may not be persisted outside of that location, but may be kept in an ephemeral store.


There is no built-in feature for that, but you could probably meet the requirement for security by encrypting the MemSQL data directory (datadir) at the operating system level.

You could install MemSQL with the datadir on a RAM disk every time you start up your app. That could take tens of seconds every time you start the app. However, that might be okay depending on your application needs.

Would any of these solutions work for you?

MemSQL has to operate with data on file system directories so it can save snapshots for rowstore data, columnstore blobs, and write-ahead log files for transaction management.