diff --git a/typo3/sysext/install/Classes/Controller/Action/Step/DatabaseConnect.php b/typo3/sysext/install/Classes/Controller/Action/Step/DatabaseConnect.php
index 72b1d1ff676c758883456e45d22809258c2b7819..639e7c567c188e1481783d4ab0d355abbc92bf66 100644
--- a/typo3/sysext/install/Classes/Controller/Action/Step/DatabaseConnect.php
+++ b/typo3/sysext/install/Classes/Controller/Action/Step/DatabaseConnect.php
@@ -208,7 +208,7 @@ class DatabaseConnect extends Action\AbstractAction implements StepInterface {
 		if ($this->isConnectSuccessful() && $this->isConfigurationComplete()) {
 			return FALSE;
 		}
-		if (!$this->isConfigurationComplete() && !$this->isDbalEnabled()) {
+		if (!$this->isHostConfigured() && !$this->isDbalEnabled()) {
 			$this->useDefaultValuesForNotConfiguredOptions();
 			throw new \TYPO3\CMS\Install\Controller\Exception\RedirectException(
 				'Wrote default settings to LocalConfiguration.php, redirect needed',
@@ -319,21 +319,33 @@ class DatabaseConnect extends Action\AbstractAction implements StepInterface {
 	 * Check LocalConfiguration.php for required database settings:
 	 * - 'host' is mandatory and must not be empty
 	 * - 'port' OR 'socket' is mandatory, but may be empty
-	 * - 'username' and 'password' are mandatory, but may be empty
 	 *
-	 * @return boolean TRUE if required settings are present
+	 * @return boolean TRUE if host is set
 	 */
-	protected function isConfigurationComplete() {
-		$configurationComplete = TRUE;
+	protected function isHostConfigured() {
+		$hostConfigured = TRUE;
 		if (empty($GLOBALS['TYPO3_CONF_VARS']['DB']['host'])) {
-			$configurationComplete = FALSE;
+			$hostConfigured = FALSE;
 		}
 		if (
 			!isset($GLOBALS['TYPO3_CONF_VARS']['DB']['port'])
 			&& !isset($GLOBALS['TYPO3_CONF_VARS']['DB']['socket'])
 		) {
-			$configurationComplete = FALSE;
+			$hostConfigured = FALSE;
 		}
+		return $hostConfigured;
+	}
+
+	/**
+	 * Check LocalConfiguration.php for required database settings:
+	 * - 'host' is mandatory and must not be empty
+	 * - 'port' OR 'socket' is mandatory, but may be empty
+	 * - 'username' and 'password' are mandatory, but may be empty
+	 *
+	 * @return boolean TRUE if required settings are present
+	 */
+	protected function isConfigurationComplete() {
+		$configurationComplete = $this->isHostConfigured();
 		if (!isset($GLOBALS['TYPO3_CONF_VARS']['DB']['username'])) {
 			$configurationComplete = FALSE;
 		}
@@ -362,10 +374,6 @@ class DatabaseConnect extends Action\AbstractAction implements StepInterface {
 	protected function useDefaultValuesForNotConfiguredOptions() {
 		$localConfigurationPathValuePairs = array();
 
-		// Mandatory settings will always be written to LocalConfiguration.php, username/password may be empty
-		$localConfigurationPathValuePairs['DB/username'] = $this->getConfiguredUsername();
-		$localConfigurationPathValuePairs['DB/password'] = $this->getConfiguredPassword();
-
 		$localConfigurationPathValuePairs['DB/host'] = $this->getConfiguredHost();
 
 		// If host is "local" either by upgrading or by first install, we try a socket