diff --git a/tapeserver/daemon/DriveHandler.cpp b/tapeserver/daemon/DriveHandler.cpp
index 335cbcb199bad8c10c7d8c1c64686e9ae9b80f98..c90de72285d379df506f71fec74378aea93940bd 100644
--- a/tapeserver/daemon/DriveHandler.cpp
+++ b/tapeserver/daemon/DriveHandler.cpp
@@ -862,7 +862,7 @@ int DriveHandler::runChild() {
     }
     std::unique_ptr<cta::catalogue::Catalogue> catalogue;
     try {
-      const cta::rdbms::Login catalogueLogin = cta::rdbms::Login::parseFile("/etc/cta/cta_catalogue_db.conf");
+      const cta::rdbms::Login catalogueLogin = cta::rdbms::Login::parseFile(m_tapedConfig.fileCatalogConfigFile.value());
       const uint64_t nbConns = 1;
       catalogue=cta::catalogue::CatalogueFactory::create(catalogueLogin, nbConns);
     } catch(cta::exception::Exception &ex) {
diff --git a/tapeserver/daemon/TapedConfiguration.cpp b/tapeserver/daemon/TapedConfiguration.cpp
index 648ca2c23e42353184779b8cbe1b0300681820bd..260da04b79be17b8827789ff4934cabac45dee1a 100644
--- a/tapeserver/daemon/TapedConfiguration.cpp
+++ b/tapeserver/daemon/TapedConfiguration.cpp
@@ -55,7 +55,7 @@ TapedConfiguration TapedConfiguration::createFromCtaConf(
   ret.wdScheduleMaxSecs.setFromConfigurationFile(cf, generalConfigPath);
   // The central storage access configuration
   ret.objectStoreURL.setFromConfigurationFile(cf, generalConfigPath);
-  ret.fileCatalogURL.setFromConfigurationFile(cf, generalConfigPath);
+  ret.fileCatalogConfigFile.setFromConfigurationFile(cf, generalConfigPath);
   // Extract drive list from tpconfig + parsed config file
   ret.driveConfigs = Tpconfig::parseFile(ret.tpConfigPath.value());
   
@@ -77,7 +77,7 @@ TapedConfiguration TapedConfiguration::createFromCtaConf(
   ret.wdScheduleMaxSecs.log(log);
   
   ret.objectStoreURL.log(log);
-  ret.fileCatalogURL.log(log);
+  ret.fileCatalogConfigFile.log(log);
   
   for (auto & i:ret.driveConfigs) {
     i.second.log(log);
diff --git a/tapeserver/daemon/TapedConfiguration.hpp b/tapeserver/daemon/TapedConfiguration.hpp
index a58882372c5c8332b06d1bcf4bdc1357db39b28b..0f9af9a508cac3eea27068ae30e175a1168bc777 100644
--- a/tapeserver/daemon/TapedConfiguration.hpp
+++ b/tapeserver/daemon/TapedConfiguration.hpp
@@ -102,9 +102,9 @@ struct TapedConfiguration {
   /// URL of the object store.
   SourcedParameter<std::string> objectStoreURL = decltype(objectStoreURL)
     ("general", "ObjectStoreURL");
-  /// URL of the file catalog
-  SourcedParameter<std::string> fileCatalogURL = decltype(fileCatalogURL)
-    ("general", "FileCatalogURL");
+  /// Path to the file catalog config file
+  SourcedParameter<std::string> fileCatalogConfigFile = decltype(fileCatalogConfigFile)
+    ("general", "FileCatalogConfigFile", "/etc/cta/cta_catalogue_db.conf", "Compile time default");
   
 private:
   /** A private dummy logger which will simplify the implementation of the 
diff --git a/tapeserver/daemon/TapedConfigurationTests.cpp b/tapeserver/daemon/TapedConfigurationTests.cpp
index 4a871715ee144afc5a37d7495dac38a3e16165ff..750ffe43cfcd8f38adeee2244f0e1e3f59d4bf1b 100644
--- a/tapeserver/daemon/TapedConfigurationTests.cpp
+++ b/tapeserver/daemon/TapedConfigurationTests.cpp
@@ -33,7 +33,7 @@ TEST(cta_Daemon, TapedConfiguration) {
   completeConfFile.stringFill(
   "#A good enough configuration file for taped\n"
   "general ObjectStoreURL vfsObjectStore:///tmp/dir\n"
-  "general FileCatalogURL sqliteFileCatalog:///tmp/dir2\n"
+  "general FileCatalogConfigFile /etc/cta/catalog.conf\n"
   "taped BufferCount 1\n"
   "taped TpConfigPath ");
   TempFile emptyTpConfig;
@@ -44,8 +44,8 @@ TEST(cta_Daemon, TapedConfiguration) {
     cta::tape::daemon::TapedConfiguration::createFromCtaConf(completeConfFile.path());
   ASSERT_EQ(completeConfFile.path()+":2", completeConfig.objectStoreURL.source());
   ASSERT_EQ("vfsObjectStore:///tmp/dir", completeConfig.objectStoreURL.value());
-  ASSERT_EQ(completeConfFile.path()+":3", completeConfig.fileCatalogURL.source());
-  ASSERT_EQ("sqliteFileCatalog:///tmp/dir2", completeConfig.fileCatalogURL.value());
+  ASSERT_EQ(completeConfFile.path()+":3", completeConfig.fileCatalogConfigFile.source());
+  ASSERT_EQ("/etc/cta/catalog.conf", completeConfig.fileCatalogConfigFile.value());
 }
 
 TEST(cta_Daemon, TapedConfigurationFull) {
@@ -54,7 +54,7 @@ TEST(cta_Daemon, TapedConfigurationFull) {
   completeConfFile.stringFill(
   "#A good enough configuration file for taped\n"
   "general ObjectStoreURL vfsObjectStore:///tmp/dir\n"
-  "general FileCatalogURL sqliteFileCatalog:///tmp/dir2\n"
+  "general FileCatalogConfigFile /etc/cta/catalog.conf\n"
   "taped ArchiveFetchBytesFiles 1,2\n"
   "taped ArchiveFlushBytesFiles              3 , 4 \n"
   "taped RetrieveFetchBytesFiles  5,   6\n"
@@ -70,8 +70,8 @@ TEST(cta_Daemon, TapedConfigurationFull) {
     cta::tape::daemon::TapedConfiguration::createFromCtaConf(completeConfFile.path()/*, log*/);
   ASSERT_EQ(completeConfFile.path()+":2", completeConfig.objectStoreURL.source());
   ASSERT_EQ("vfsObjectStore:///tmp/dir", completeConfig.objectStoreURL.value());
-  ASSERT_EQ(completeConfFile.path()+":3", completeConfig.fileCatalogURL.source());
-  ASSERT_EQ("sqliteFileCatalog:///tmp/dir2", completeConfig.fileCatalogURL.value());
+  ASSERT_EQ(completeConfFile.path()+":3", completeConfig.fileCatalogConfigFile.source());
+  ASSERT_EQ("/etc/cta/catalog.conf", completeConfig.fileCatalogConfigFile.value());
   ASSERT_EQ(1, completeConfig.archiveFetchBytesFiles.value().maxBytes);
   ASSERT_EQ(2, completeConfig.archiveFetchBytesFiles.value().maxFiles);
   ASSERT_EQ(3, completeConfig.archiveFlushBytesFiles.value().maxBytes);