diff --git a/CHANGELOG.md b/CHANGELOG.md
index c953b99e..0696a389 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,23 @@ All notable changes to this project will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com), and this project adheres to [Semantic Versioning](https://semver.org).
 
+## [4.2.1] - 2024-10-04
+### Added
+* [#2183](https://github.com/shlinkio/shlink/issues/2183) Redis database index to be used can now be specified in the connection URI path, and Shlink will honor it.
+
+### Changed
+* *Nothing*
+
+### Deprecated
+* *Nothing*
+
+### Removed
+* *Nothing*
+
+### Fixed
+* [#2201](https://github.com/shlinkio/shlink/issues/2201) Fix `MEMORY_LIMIT` option being ignored when provided via installer options.
+
+
 ## [4.2.0] - 2024-08-11
 ### Added
 * [#2120](https://github.com/shlinkio/shlink/issues/2120) Add new IP address condition for the dynamic rules redirections system.
diff --git a/composer.json b/composer.json
index 08c94557..77fc84a8 100644
--- a/composer.json
+++ b/composer.json
@@ -20,9 +20,9 @@
         "ext-pdo": "*",
         "akrabat/ip-address-middleware": "^2.1",
         "cakephp/chronos": "^3.0.2",
-        "doctrine/dbal": "^4.0",
+        "doctrine/dbal": "^4.1",
         "doctrine/migrations": "^3.6",
-        "doctrine/orm": "^3.0",
+        "doctrine/orm": "^3.2",
         "endroid/qr-code": "^5.0",
         "friendsofphp/proxy-manager-lts": "^1.0",
         "geoip2/geoip2": "^3.0",
@@ -44,7 +44,7 @@
         "pagerfanta/core": "^3.8",
         "ramsey/uuid": "^4.7",
         "shlinkio/doctrine-specification": "^2.1.1",
-        "shlinkio/shlink-common": "^6.2",
+        "shlinkio/shlink-common": "^6.3",
         "shlinkio/shlink-config": "^3.0",
         "shlinkio/shlink-event-dispatcher": "^4.1",
         "shlinkio/shlink-importer": "^5.3.2",
diff --git a/config/container.php b/config/container.php
index bfab7763..6e5172a4 100644
--- a/config/container.php
+++ b/config/container.php
@@ -12,8 +12,6 @@ chdir(dirname(__DIR__));
 
 require 'vendor/autoload.php';
 
-// Set a default memory limit, but allow custom values
-ini_set('memory_limit', EnvVars::MEMORY_LIMIT->loadFromEnv('512M'));
 // This is one of the first files loaded. Configure the timezone here
 date_default_timezone_set(EnvVars::TIMEZONE->loadFromEnv(date_default_timezone_get()));
 
@@ -25,6 +23,10 @@ if (! class_exists(LOCAL_LOCK_FACTORY)) {
 
 return (static function (): ServiceManager {
     $config = require __DIR__ . '/config.php';
+
+    // Set memory limit right after loading config, to ensure installer config has been promoted as env vars
+    ini_set('memory_limit', EnvVars::MEMORY_LIMIT->loadFromEnv('512M'));
+
     $container = new ServiceManager($config['dependencies']);
     $container->setService('config', $config);
 
diff --git a/module/Core/src/Visit/Listener/OrphanVisitsCountTracker.php b/module/Core/src/Visit/Listener/OrphanVisitsCountTracker.php
index 157d587e..a673f19e 100644
--- a/module/Core/src/Visit/Listener/OrphanVisitsCountTracker.php
+++ b/module/Core/src/Visit/Listener/OrphanVisitsCountTracker.php
@@ -58,9 +58,10 @@ final class OrphanVisitsCountTracker
         $conn = $em->getConnection();
         $platformClass = $conn->getDatabasePlatform();
 
-        match ($platformClass::class) {
-            PostgreSQLPlatform::class => $this->incrementForPostgres($conn, $isBot),
-            SQLitePlatform::class, SQLServerPlatform::class => $this->incrementForOthers($conn, $isBot),
+        match (true) {
+            $platformClass instanceof PostgreSQLPlatform => $this->incrementForPostgres($conn, $isBot),
+            $platformClass instanceof SQLitePlatform || $platformClass instanceof SQLServerPlatform
+                => $this->incrementForOthers($conn, $isBot),
             default => $this->incrementForMySQL($conn, $isBot),
         };
     }
diff --git a/module/Core/src/Visit/Listener/ShortUrlVisitsCountTracker.php b/module/Core/src/Visit/Listener/ShortUrlVisitsCountTracker.php
index f62ddb3d..0ab8d393 100644
--- a/module/Core/src/Visit/Listener/ShortUrlVisitsCountTracker.php
+++ b/module/Core/src/Visit/Listener/ShortUrlVisitsCountTracker.php
@@ -64,9 +64,10 @@ final class ShortUrlVisitsCountTracker
         $conn = $em->getConnection();
         $platformClass = $conn->getDatabasePlatform();
 
-        match ($platformClass::class) {
-            PostgreSQLPlatform::class => $this->incrementForPostgres($conn, $shortUrlId, $isBot),
-            SQLitePlatform::class, SQLServerPlatform::class => $this->incrementForOthers($conn, $shortUrlId, $isBot),
+        match (true) {
+            $platformClass instanceof PostgreSQLPlatform => $this->incrementForPostgres($conn, $shortUrlId, $isBot),
+            $platformClass instanceof SQLitePlatform || $platformClass instanceof SQLServerPlatform
+                => $this->incrementForOthers($conn, $shortUrlId, $isBot),
             default => $this->incrementForMySQL($conn, $shortUrlId, $isBot),
         };
     }