In general, you will need the Bacula source release, and if you want to run
a Windows client, you will need the Bacula Windows binary release.
-However, Bacula needs certain third party packages (such as {\bf MySQL},
-{\bf PostgreSQL}, or {\bf SQLite} to build and run
+However, Bacula needs certain third party packages (such as {\bf MySQL} or
+{\bf PostgreSQL} to build and run
properly depending on the
options you specify. Normally, {\bf MySQL} and {\bf PostgreSQL} are
packages that can be installed on your distribution. However, if you do
\hline
\multicolumn{1}{|c| }{\bf 3rd Party Package} & \multicolumn{1}{c| }{\bf depkgs}
& \multicolumn{1}{c| }{\bf depkgs-qt} \\
- \hline {SQLite3 } & \multicolumn{1}{c| }{X } & \multicolumn{1}{c| }{ }\\
\hline {mtx } & \multicolumn{1}{c| }{X } & \multicolumn{1}{c| }{ } \\
\hline {qt4 } & \multicolumn{1}{c| }{ } & \multicolumn{1}{c| }{X } \\
\hline
\footnotesize
\begin{verbatim}
cd bacula/depkgs
-make sqlite
+make qt4
\end{verbatim}
\normalsize
-will configure and build only the SQLite package.
+will configure and build only the QT4 package.
You should build the packages that you will require in {\bf depkgs} a
prior to configuring and building Bacula, since Bacula will need
included in the package prior to building Bacula. Please read the INSTALL
file for more details.
-Even if you do not use SQLite, you might find it worthwhile to build {\bf mtx}
+You might find it worthwhile to build {\bf mtx}
because the {\bf tapeinfo} program that comes with it can often provide you
with valuable information about your SCSI tape drive (e.g. compression,
min/max block sizes, ...). Note, most distros provide {\bf mtx} as part of
can skip this phase provided that you have built the thread safe libraries.
And you have already installed the additional rpms noted above.
- SQLite is not supported on Solaris. This is because it
- frequently fails with bus errors. However SQLite3 may work.
-
\item Detar the Bacula source code preferably into the {\bf bacula} directory
discussed above.
\ilink{Installing and Configuring MySQL Phase II}{mysql_phase2} or
create the Bacula PostgreSQL database and tables
\ilink{Configuring PostgreSQL II}{PostgreSQL_configure} or alternatively if you are using
- SQLite \ilink{Installing and Configuring SQLite Phase II}{phase2}.
\item Start Bacula ({\bf ./bacula start}) Note. the next chapter shows you
how to do this in detail.
\index[general]{What Database to Use?}
\index[general]{Use!What Database to}
-Before building Bacula you need to decide if you want to use SQLite, MySQL, or
-PostgreSQL. If you are not already running MySQL or PostgreSQL, you might
-want to start by testing with SQLite (not supported on Solaris).
-This will greatly simplify the setup for you
-because SQLite is compiled into Bacula an requires no administration. It
-performs well and is suitable for small to medium sized installations (maximum
-10-20 machines). However, we should note that a number of users have
-had unexplained database corruption with SQLite. For that reason, we
-recommend that you install either PostgreSQL or MySQL for production
-work.
-
If you wish to use MySQL as the Bacula catalog, please see the
\ilink{Installing and Configuring MySQL}{MySqlChapter} chapter of this
manual. You will need to install MySQL prior to continuing with the
configuration of Bacula. MySQL is a high quality database that is very
efficient and is suitable for small and medium sized installation (up to
-2,000,000 files per job). It is slightly more complicated than SQLite to setup
-and administer because it has a number of sophisticated features such as
-userids and passwords. It runs as a separate process, is truly professional and
-can manage a database of any size.
+2,000,000 files per job).
If you wish to use PostgreSQL as the Bacula catalog, please see the
\ilink{Installing and Configuring PostgreSQL}{PostgreSqlChapter} chapter of
many optimized PostgreSQL functions, and can run more than 10 time faster on
jobs having millions of files than MySQL (Specially in during restore, accurate
mode, bvfs queries and when the database server is not on the same host than
-the Director). It's possible to switch from MySQL/SQLite to PostgreSQL, but it
-requires some DBA knowledge.
-
-If you wish to use SQLite as the Bacula catalog, please see
-\ilink{Installing and Configuring SQLite}{SqlLiteChapter} chapter of
-this manual. SQLite is not supported on Solaris.
+the Director).
\section{Quick Start}
\index[general]{Quick Start}
thread safe. If you find that batch mode is not enabled on your Bacula
installation, then your database most likely does not support threads.
- SQLite2 is not thread safe. Batch insert cannot be enabled when using
- SQLite2
-
- On most systems, MySQL, PostgreSQL and SQLite3 are thread safe.
+ On most systems, MySQL and PostgreSQLare thread safe.
To verify that your PostgreSQL is thread safe, you can try this
(change the path to point to your particular installed libpq.a;
explicitly need to use this option so that Bacula does not attempt
to reference OS function calls that do not exist.
-\item [ {-}{\-}with-sqlite3=\lt{}sqlite3-path\gt{}]
- \index[general]{{-}{\-}with-sqlite3}
- This enables use of the SQLite version 3.x database. The {\bf
- sqlite3-path} is not normally specified as Bacula looks for the
- necessary components in a standard location ({\bf depkgs/sqlite3}). See
- \ilink{Installing and Configuring SQLite}{SqlLiteChapter} chapter of
- this manual for more details. SQLite3 is not supported on Solaris.
-
\item [ {-}{\-}with-mysql=\lt{}mysql-path\gt{}]
\index[general]{{-}{\-}with-mysql}
This enables building of the Catalog services for Bacula. It assumes
simply use {\bf {-}{\-}with-postgresql}.
Note, for Bacula to be configured properly, you must specify one
- of the three database options supported. That is:
- {-}{\-}with-sqlite3, {-}{\-}with-mysql, or
+ of the two database options supported. That is:
{-}{\-}with-postgresql, otherwise the ./configure will fail.
\smallskip
- Note: SQLite is no longer supported. The code remains in Bacula but
- we no longer test it.
\item [ {-}{\-}with-openssl=\lt{}path\gt{}]
\section{Red Hat}
\index[general]{Red Hat}
-Using SQLite:
-
-\footnotesize
-\begin{verbatim}
-
-CFLAGS="-g -Wall" ./configure \
- --sbindir=/opt/bacula/bin \
- --sysconfdir=/opt/bacula/etc \
- --enable-smartalloc \
- --with-sqlite=$HOME/bacula/depkgs/sqlite \
- --with-working-dir=/opt/bacula/working \
- --with-pid-dir=/opt/bacula/working \
- --with-subsys-dir=/opt/bacula/working \
- --enable-bat \
- --enable-readline
-\end{verbatim}
-\normalsize
-
or
\footnotesize
./configure}.
Since the File daemon does not access the Catalog database, you can remove
-the {\bf \verb:--:with-mysql} or {\bf \verb:--:with-sqlite} options, then
+the {\bf \verb:--:with-mysql} ption, then
add {\bf \verb:--:enable-client-only}. This will compile only the
necessary libraries and the client programs and thus avoids the necessity
of installing one or another of those database programs to build the File
After doing a {\bf make install} the following files will be installed on your
system (more or less). The exact files and location (directory) for each file
-depends on your {\bf ./configure} command (e.g. if you are using SQLite instead
-of MySQL, some of the files will be different).
+depends on your {\bf ./configure} command.
NOTE: it is quite probable that this list is out of date. But it is a
starting point.