DiskPulse is capable of saving disk change monitoring reports in an SQL database. Reports may be saved manually or automatically
using conditional report generation actions triggered when a user-specified number of changes detected in a disk or directory.
SQL Database integration is available in DiskPulse Ultimate, DiskPulse Server and DiskPulse Network.
Insalling MySQL Database
In order to configure DiskPulse to use the MySQL database, the user needs to install the following two components: the MySQL Server
and the MySQL ODBC connector. First of all, let's install the MySQL Server. Download the latest version of the MySQL server from the
MySQL web site and execute the setup program to start the installation procedure. On the setup type page, select the 'Typical' setup
type and press the 'Next' button. By default, the setup will install the MySQL server and a command line utility, which will be used
to configure the MySQL server.
On the next setup page, select the 'Configure the MySQL Server now' option and press the 'Finish' button. The setup program will open
a MySQL configuration wizard allowing one to configure basic server settings.
On the next setup page, select the 'Detailed Configuration' option and press the 'Next' button. The detailed configuration mode is
required to configure the MySQL server for maximum database performance.
On the next page, select the 'Server Machine' option, which is the most balanced configuration for typical DiskPulse Server and DiskPulse
Network workloads. If the server is intended to process large volumes of reports and is dedicated for DiskPulse Network,
select the 'Dedicated Server' configuration option.
On the next page, select the 'Non-Transactional Database' option. DiskPulse does not perform concurrent insert or modify operations
on the database and a transactional database is not required. Moreover, configuring the MySQL server as a non-transactional database
will significantly improve the performance of database import operations.
On the next page, select the 'Manual Setting' option and set the number of concurrent database connections to 5, which is the optimal
number for DiskPulse Ultimate, DiskPulse Server and DiskPulse Network installations.
On the next page, enable TCP/IP networking and if the server will be accessed from other computers on the network, add a firewall
exception for the MySQL server port. In general, a single MySQL server may be used to collect reports from multiple DiskPulse
Servers using remote ODBC connections.
On the next page select an appropriate character set. By default, DiskPulse uses the UTF-8 character set to store names of files
and directories, but if there is no need to process Unicode file names, this option may be set to the standard Latin1 character set.
On the next page, select the 'Install as Windows Service' option and select the 'Include Bin Directory in Windows PATH' option. The PATH
option will enable execution of the MySQL command line utility from any location.
On the next page, select the 'Modify Security Settings' option and specify a root password for the MySQL server, which later will be
used to configure regular MySQL users. That's all. Press the 'Next' button to finish the installation procedure.
Configuring MySQL Database
The MySQL database provides the 'mysql' command line utility, which may be used to configure the database and the user account to be used by DiskPulse.
In order to configure the MySQL database, open the command prompt window and type the following command:
mysql -u root -p
This command will start the 'mysql' command line utility and login to the MySQL server with root permissions. The user will be asked to provide the
root password, which was specified during the MySQL server installation procedure.
Once logged in, the user needs to create a database that will be used by DiskPulse to store disk change monitoring reports. In order to do that,
type the following command:
create database diskpulse;
Now, add a user account that will be used by DiskPulse to submit reports to the database. Single quotes are required and should be specified exactly as displayed.
create user 'diskpulse'@'localhost' identified by 'password';
Now, grant permissions to the user account using the following command:
grant all privileges on *.* to 'diskpulse'@'localhost';
Finally, flush user privileges using the following command.
That's all. Now the MySQL server is fully configured. In order to disconnect from the MySQL database, just type 'quit' in the command window.
Configuring ODBC Interface
DiskPulse connects to the MySQL database through the ODBC interface. Download an appropriate version of the MySQL ODBC connector from the MySQL
web site and execute the setup program. There are no critical configuration options in the MySQL ODBC connector installation procedure and the
user can just press the 'Next' button until the last page keeping the default configuration options.
After finished installing MySQL ODBC Connector, open the Windows control panel and select 'Administrative Tools - Data Sources (ODBC)'. On the ODBC
Administrator window, select the 'System DSN' tab and press the 'Add' button. On the next page, select the 'MySQL ODBC Driver' and press the 'Finish' button.
On the next page, enter a new data source name, which will be used by DiskPulse to connect to the database. Specify the name of the host where the MySQL
server is running on and enter the MySQL user name and password that should be used by DiskPulse to connect to the database. Finally, select the name
of the database that should be used to store disk change monitoring reports. After finished specifying all the required information, press
the 'Test' button to check the database connection.
Configuring DiskPulse to Use the Installed MySQL Database
In order to configure DiskPulse to use the installed MySQL database, open the options dialog and select the 'Database' tab. Enable the ODBC interface
and enter the name of the ODBC data source, the database user name and password that were specified for the ODBC data source. Finally, press
the 'Verify' button to check the DiskPulse database connection.