diff --git a/lib/AccountManager/App.pm b/lib/AccountManager/App.pm
index 07e0de4d548cb6989769c14e5a5c5572e269465f..042d46ed56e6dbef4783b1fc5977daf6675405b1 100644
--- a/lib/AccountManager/App.pm
+++ b/lib/AccountManager/App.pm
@@ -91,16 +91,7 @@ sub new {
         );
     }
 
-    if ($self->{configuration}->{logger}) {
-        AccountManager::DB->register_db(
-            driver   => $self->{configuration}->{database}->{type},
-            database => $self->{configuration}->{database}->{name},
-            host     => $self->{configuration}->{database}->{host},
-            username => $self->{configuration}->{database}->{username},
-            password => $self->{configuration}->{database}->{password},
-            options  => [ split(/, */, $self->{configuration}->{database}->{options}) ]
-        );
-    } else {
+    if (!$self->{configuration}->{database}) {
         $self->{logger}->fatal(
             "No database defined in configuration, aborting"
         );
@@ -111,6 +102,15 @@ sub new {
                 errors => [ 'internal' ]
             }
         );
+    } else {
+        AccountManager::DB->register_db(
+            driver   => $self->{configuration}->{database}->{type},
+            database => $self->{configuration}->{database}->{name},
+            host     => $self->{configuration}->{database}->{host},
+            username => $self->{configuration}->{database}->{username},
+            password => $self->{configuration}->{database}->{password},
+            options  => [ split(/, */, $self->{configuration}->{database}->{options}) ]
+        );
     }
 
     $self->{db} = AccountManager::DB->new();