I'm performing a new installation of Nagios xi on RHEL 5.1 32-bit. All went well till I got to executing the command "./E-importnagiosql". This command returned the following errors shown below. The errors in particular are "DB Connect Error [nagiosxi]: Database connection failed" and "Error: Cannot open config file '/usr/local/nagios/etc/contacttemplates.cfg' for reading: No such file or directory"
[root@nagiosxi nagiosxi]# ./E-importnagiosql
Starting httpd:
/var/tmp/nagiosxi/nagiosxi/basedir/scripts /var/tmp/nagiosxi
DB Connect Error [nagiosxi]: Database connection failed
ERROR CONNECTING TO DATABASES!
IMPORTING CONFIG FILES...Array
(
[0] => nagiosadmin.cfg
)
IMPORTING /usr/local/nagios/etc/import/nagiosadmin.cfg
CMDLINE:
/usr/bin/wget --load-cookies=nagiosql.cookies http://localhost/nagiosql/admin/import.php --no-check-certificate --post-data 'chbOverwrite=1&selImportFile[]=/usr/local/nagios/etc/import/nagiosadmin.cfg' -O nagiosql.import.monitoring
--10:35:02-- http://localhost/nagiosql/admin/import.php
Resolving localhost... 127.0.0.1
Connecting to localhost|127.0.0.1|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 0 [text/html]
Saving to: `nagiosql.import.monitoring'
[ <=> ] 0 --.-K/s in 0s
10:35:02 (0.00 B/s) - `nagiosql.import.monitoring' saved [0/0]
SETUID ROOT OK
RESETTING PERMS
DB Connect Error [nagiosxi]: Database connection failed
ERROR CONNECTING TO DATABASES!
CMDLINE:
/usr/bin/wget --load-cookies=nagiosql.cookies http://localhost/nagiosql/admin/verify.php --no-check-certificate --post-data 'writeMonitoring=Go' -O nagiosql.export.monitoring
--10:35:03-- http://localhost/nagiosql/admin/verify.php
Resolving localhost... 127.0.0.1
Connecting to localhost|127.0.0.1|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 0 [text/html]
Saving to: `nagiosql.export.monitoring'
[ <=> ] 0 --.-K/s in 0s
10:35:03 (0.00 B/s) - `nagiosql.export.monitoring' saved [0/0]
--10:35:03-- http://localhost/nagiosql/admin/verify.php
Resolving localhost... 127.0.0.1
Connecting to localhost|127.0.0.1|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 0 [text/html]
Saving to: `nagiosql.export.additional'
[ <=> ] 0 --.-K/s in 0s
10:35:03 (0.00 B/s) - `nagiosql.export.additional' saved [0/0]
CMDLINE:
/usr/bin/wget --load-cookies=nagiosql.cookies http://localhost/nagiosql/admin/verify.php --no-check-certificate --post-data 'writeAdditional=Go' -O nagiosql.export.additional
OUTPUT:
Nagios Core 3.2.3
Copyright (c) 2009-2010 Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 10-03-2010
License: GPL
Website: http://www.nagios.org
Reading configuration data...
Read main config file okay...
Processing object config directory '/usr/local/nagios/etc/static'...
Processing object config file '/usr/local/nagios/etc/static/xiobjects.cfg'...
Processing object config file '/usr/local/nagios/etc/static/xitest.cfg'...
Processing object config file '/usr/local/nagios/etc/static/xitemplates.cfg'...
Processing object config file '/usr/local/nagios/etc/contacttemplates.cfg'...
Error: Cannot open config file '/usr/local/nagios/etc/contacttemplates.cfg' for reading: No such file or directory
Error processing object config files!
***> One or more problems was encountered while processing the config files...
Check your configuration file(s) to ensure that they contain valid
directives and data defintions. If you are upgrading from a previous
version of Nagios, you should be aware that some variables/definitions
may have been removed or modified in this version. Make sure to read
the HTML documentation regarding the config files, as well as the
'Whats New' section to find out what has changed.
RET: 254
/usr/local/nagiosxi/nom/checkpoints/nagioscore/errors /var/tmp/nagiosxi/nagiosxi/basedir/scripts
tar: Removing leading `/' from member names
/var/tmp/nagiosxi/nagiosxi/basedir/scripts
ls: /usr/local/nagiosxi/nom/checkpoints/nagioscore/*.gz: No such file or directory
NO NOM SNAPSHOT FOUND!
/var/tmp/nagiosxi
[root@nagios ~]# psql template1 postgres
Welcome to psql 8.1.9, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
During the "E" installer script, NagiosQL imports the default config files into the database, and then writes out the configuration files from the database. Can you verify that myql installed correctly and that the password for the mysql root user is nagiosxi?
Try
service mysqld restart
And then see if you can login as root: (password nagiosxi at prompt):
mysql -u root -p
[root@nagiosxi ~]# service mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
[root@nagiosxi ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2 to server version: 5.0.22
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
So yes, it seems mysql is installed and works just fine with the default password too! But still comes up with the same errors as indicated in my initial post.
[root@demo ~]# su nagios -c "psql nagiosxi nagiosxi"
could not change directory to "/root"
Welcome to psql 8.1.22, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
nagiosxi=> \dt
List of relations
Schema | Name | Type | Owner
--------+-------------+-------+----------
public | xi_commands | table | nagiosxi
public | xi_events | table | nagiosxi
public | xi_meta | table | nagiosxi
public | xi_options | table | nagiosxi
public | xi_sysstat | table | nagiosxi
public | xi_usermeta | table | nagiosxi
public | xi_users | table | nagiosxi
(7 rows)
nagiosxi=>
[root@nagios nagiosxi]# psql template1 postgres
Welcome to psql 8.1.9, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
template1=# \l
List of databases
Name | Owner | Encoding
-----------+----------+----------
nagiosxi | nagiosxi | UTF8
postgres | postgres | UTF8
template0 | postgres | UTF8
template1 | postgres | UTF8
(4 rows)
template1=# \q
[root@nagios nagiosxi]# su nagios -c "psql nagiosxi nagiosxi"
Welcome to psql 8.1.9, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
nagiosxi=> \dt
List of relations
Schema | Name | Type | Owner
--------+-------------+-------+----------
public | xi_commands | table | nagiosxi
public | xi_events | table | nagiosxi
public | xi_meta | table | nagiosxi
public | xi_options | table | nagiosxi
public | xi_sysstat | table | nagiosxi
public | xi_usermeta | table | nagiosxi
public | xi_users | table | nagiosxi
(7 rows)
nagiosxi=>
As seen from the above, all looks good as per the queries since they match your examples.
So I still don't know what could be wrong here....