diff --git a/src/server/database/Database/DatabaseLoader.cpp b/src/server/database/Database/DatabaseLoader.cpp index 5ca5844e3..cfd0d6f0f 100644 --- a/src/server/database/Database/DatabaseLoader.cpp +++ b/src/server/database/Database/DatabaseLoader.cpp @@ -84,7 +84,7 @@ DatabaseLoader& DatabaseLoader::AddDatabase(DatabaseWorkerPool& pool, std::st } // Database does not exist - if ((error == ER_BAD_DB_ERROR) && updatesEnabledForThis && _autoSetup && !sConfigMgr->isDryRun()) + if ((error == ER_BAD_DB_ERROR) && updatesEnabledForThis && _autoSetup) { // Try to create the database and connect again if auto setup is enabled if (DBUpdater::Create(pool) && (!pool.Open())) @@ -112,7 +112,7 @@ DatabaseLoader& DatabaseLoader::AddDatabase(DatabaseWorkerPool& pool, std::st }); // Populate and update only if updates are enabled for this pool - if (updatesEnabledForThis && !sConfigMgr->isDryRun()) + if (updatesEnabledForThis) { _populate.push([this, name, &pool]() -> bool { diff --git a/src/server/database/Updater/DBUpdater.cpp b/src/server/database/Updater/DBUpdater.cpp index b431da081..4bec99abc 100644 --- a/src/server/database/Updater/DBUpdater.cpp +++ b/src/server/database/Updater/DBUpdater.cpp @@ -173,10 +173,13 @@ bool DBUpdater::Create(DatabaseWorkerPool& pool) LOG_WARN("sql.updates", "Database \"{}\" does not exist, do you want to create it? [yes (default) / no]: ", pool.GetConnectionInfo()->database); - std::string answer; - std::getline(std::cin, answer); - if (!answer.empty() && !(answer.substr(0, 1) == "y")) - return false; + if (!sConfigMgr->isDryRun()) + { + std::string answer; + std::getline(std::cin, answer); + if (!answer.empty() && !(answer.substr(0, 1) == "y")) + return false; + } LOG_INFO("sql.updates", "Creating database \"{}\"...", pool.GetConnectionInfo()->database); @@ -192,7 +195,6 @@ bool DBUpdater::Create(DatabaseWorkerPool& pool) } file << "CREATE DATABASE `" << pool.GetConnectionInfo()->database << "` DEFAULT CHARACTER SET UTF8MB4 COLLATE utf8mb4_general_ci;\n\n"; - file.close(); try