diff --git a/lib/private/Memcache/Memcached.php b/lib/private/Memcache/Memcached.php
index f0cb4ae99db7d8d9c57f376a219b0fade43350f4..dbff6dc2ec2ca1c0ba68eafcf1c7f51de398efb7 100644
--- a/lib/private/Memcache/Memcached.php
+++ b/lib/private/Memcache/Memcached.php
@@ -46,16 +46,6 @@ class Memcached extends Cache implements IMemcache {
 		parent::__construct($prefix);
 		if (is_null(self::$cache)) {
 			self::$cache = new \Memcached();
-			$servers = \OC::$server->getSystemConfig()->getValue('memcached_servers');
-			if (!$servers) {
-				$server = \OC::$server->getSystemConfig()->getValue('memcached_server');
-				if ($server) {
-					$servers = array($server);
-				} else {
-					$servers = array(array('localhost', 11211));
-				}
-			}
-			self::$cache->addServers($servers);
 
 			$defaultOptions = [
 				\Memcached::OPT_CONNECT_TIMEOUT => 50,
@@ -85,6 +75,17 @@ class Memcached extends Cache implements IMemcache {
 			} else {
 				throw new HintException("Expected 'memcached_options' config to be an array, got $options");
 			}
+
+			$servers = \OC::$server->getSystemConfig()->getValue('memcached_servers');
+			if (!$servers) {
+				$server = \OC::$server->getSystemConfig()->getValue('memcached_server');
+				if ($server) {
+					$servers = [$server];
+				} else {
+					$servers = [['localhost', 11211]];
+				}
+			}
+			self::$cache->addServers($servers);
 		}
 	}