diff --git a/software/database/src/main/java/org/apache/brooklyn/entity/database/mysql/MySqlSshDriver.java b/software/database/src/main/java/org/apache/brooklyn/entity/database/mysql/MySqlSshDriver.java
index 97fcb47..9a8ae3c 100644
--- a/software/database/src/main/java/org/apache/brooklyn/entity/database/mysql/MySqlSshDriver.java
+++ b/software/database/src/main/java/org/apache/brooklyn/entity/database/mysql/MySqlSshDriver.java
@@ -186,6 +186,12 @@
                 boolean hasCreationScript = copyDatabaseCreationScript();
                 timer.waitForExpiryUnchecked();
 
+                /*
+                 * TODO: this should not assume that the password is blank.
+                 * There may be an existing setup specified by datadir which has an existing password. The changePassword function
+                 * has been altered to try the specified `mysql.password` or blank to allow for a fresh install or a specified datadir.
+                 * This fix addresses the problem short term, but it should be properly fixed in any re-implementation.
+                 */
                 changePassword("", getPassword());
 
                 if (hasCreationScript)
@@ -204,13 +210,22 @@
         }
     }
 
+    /**
+     * Updates the password, tries both the old and new password in-case the password has already been changed
+     * @param oldPass
+     * @param newPass
+     */
     @Override
     public void changePassword(String oldPass, String newPass) {
         DynamicTasks.queue(
             SshEffectorTasks.ssh(
                 "cd "+getRunDir(),
-                getBaseDir()+"/bin/mysqladmin --defaults-file="+getConfigFile()+" --password=" + oldPass + " password "+newPass)
-            .summary("setting password")
+                    BashCommands.alternatives(
+                            getBaseDir()+"/bin/mysqladmin --defaults-file="+getConfigFile()+" --password=" + oldPass + " password "+newPass,
+                            getBaseDir()+"/bin/mysqladmin --defaults-file="+getConfigFile()+" --password=" + newPass + " password "+newPass
+                    )
+                )
+            .summary("Checking and updating password")
             .requiringExitCodeZero());
     }
 
