This error means that the notifications
user cannot connect to the notifications
database. Usually, this is a result of the optional Service Desk Connector module being installed and running but not set up.
Symptoms
You see the following broadcast error message on the orchestrator:
opsview_notifyd[18822]: [PAR::_run_member_from_par:167] [FATAL] DB error: DBIx::Class::Storage::DBI::catch {...} (): DBI Connection failed: DBI connect('database=notifications;host=127.0.0.1;port=13306','notifications',...) failed: Unknown database 'notifications' at /opt/opsview/perl/lib/perl5/DBIx/Class/Storage/DBI.pm line 1483. at script/opsview_notifyd line 137
Cause: Service Desk Connector running but unused
Most commonly, this error message appears when the optional Service Desk Connector module is installed and running but not set up.
Solution: Set up the Service Desk Connector module
If you want to set up the Service Desk Connector module, please see this knowledge page.
Solution: Disable the Service Desk Connector module
If you do not use the Service Desk Connector module, this error message is benign and can be ignored. However, you can prevent the error message from appearing by disabling the Service Desk Connector module.
Follow the steps to disable the Service Desk Connector module.
Cause: Incorrect notifications
database permissions
This error message may also be the result of incorrect permissions for the notifications
user accessing the notifications
database.
Solution: Fix user and database permissions
- Log in to the orchestrator as
root
. - Log in to the database as
root
:
mysql -h 127.0.0.1 -P 13306 -u root -p$(awk '/opsview_database_root_password/ {print $2}' /opt/opsview/deploy/etc/user_secrets.yml)
- Verify that the
notifications
user exists:
SELECT * FROM mysql.user WHERE user = "notifications";
- If the
notifications
user does not exist, please see this knowledge page on setting up the Service Desk Connector module. If thenotifications
user exists, run the following queries to grant thenotifications
user the necessary permissions:
GRANT ALL ON notifications.* TO notifications@'%' WITH GRANT OPTION;
GRANT ALL ON notifications.* TO notifications@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Cause: Incorrect notifications
user password
This error may also be caused by the notifications
user using the wrong password. This usually happens when the notifications
user password is defined multiple times. This password should ordinarily only be defined in the user_secrets.yml
file.
Solution: Ensure the password is only defined once
- Log in to the orchestrator as
root
. - Find the places where the
opsview_servicedesk_database_password
variable is defined:
grep -iR opsview_servicedesk_database_password /opt/opsview/deploy/etc/
- Comment out or remove any variable definitions except the one in
/opt/opsview/deploy/etc/user_secrets.yml
. Theopsview_servicedesk_database_password
should only be defined in/opt/opsview/deploy/etc/user_secrets.yml
.
Comments
0 comments
Please sign in to leave a comment.