Previously it was intended to be used primarily by Bacula developers for testing; although SQLite is also a good choice for this. We do not recommend its use in general.
This database is simplistic in that it consists entirely of Bacula's internal structures appended sequentially to a file. Consequently, it is in most cases inappropriate for sites with many clients or systems with large numbers of files, or long-term production environments.
Below, you will find a table comparing the features available with SQLite and MySQL and with the internal Bacula database. At the current time, you cannot dynamically switch from one to the other, but must rebuild the Bacula source code. If you wish to experiment with both, it is possible to build both versions of Bacula and install them into separate directories.
Feature | SQLite or MySQL | Bacula |
Job Record | Yes | Yes |
Media Record | Yes | Yes |
FileName Record | Yes | No |
File Record | Yes | No |
FileSet Record | Yes | Yes |
Pool Record | Yes | Yes |
Client Record | Yes | Yes |
JobMedia Record | Yes | Yes |
List Job Records | Yes | Yes |
List Media Records | Yes | Yes |
List Pool Records | Yes | Yes |
List JobMedia Records | Yes | Yes |
Delete Pool Record | Yes | Yes |
Delete Media Record | Yes | Yes |
Update Pool Record | Yes | Yes |
Implement Verify | Yes | No |
MD5 Signatures | Yes | No |
In addition, since there is no SQL available, the Console commands: sqlquery, query, retention, and any other command that directly uses SQL are not available with the Internal database.