diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc index 8e1f97b..ae9acd9 100644 --- a/includes/bootstrap.inc +++ b/includes/bootstrap.inc @@ -887,6 +887,7 @@ function _drush_bootstrap_drupal_configuration() { 'password' => NULL, 'database' => NULL, 'unix_socket' => NULL, + 'pdo' => NULL, ); $creds['driver'] = $conn['driver']; $creds['user'] = $conn['username']; @@ -895,6 +896,7 @@ function _drush_bootstrap_drupal_configuration() { $creds['port'] = $conn['port']; $creds['name'] = $conn['database']; $creds['pass'] = $conn['password']; + $creds['pdo'] = $conn['pdo']; } break; } diff --git a/includes/environment.inc b/includes/environment.inc index 246f7fa..846c161 100644 --- a/includes/environment.inc +++ b/includes/environment.inc @@ -422,7 +422,7 @@ function drush_valid_db_credentials() { switch ($type) { case 'mysql': $hostspec = $creds['port'] ? $creds['host'] . ':' . $creds['port'] : $creds['host']; - $connection = @mysql_connect($hostspec, $creds['user'], $creds['pass']); + $connection = @mysql_connect($hostspec, $creds['user'], $creds['pass'], TRUE, 2 | MYSQL_CLIENT_SSL); if (!$connection || !mysql_select_db($creds['name'])) { drush_log(mysql_error(), 'bootstrap'); return FALSE; @@ -430,7 +430,8 @@ function drush_valid_db_credentials() { break; case 'mysqli': $connection = mysqli_init(); - @mysqli_real_connect($connection, $creds['host'], $creds['user'], $creds['pass'], $creds['name'], (int)$creds['port']); + @mysqli_options($connection, MYSQLI_READ_DEFAULT_FILE, '/etc/mysql/my.cnf'); + @mysqli_real_connect($connection, $creds['host'], $creds['user'], $creds['pass'], $creds['name'], (int)$creds['port'], NULL, MYSQLI_CLIENT_FOUND_ROWS | MYSQLI_CLIENT_SSL); if (mysqli_connect_errno() > 0) { drush_log(mysqli_connect_error(), 'bootstrap'); return FALSE; @@ -514,7 +515,7 @@ function drush_valid_db_credentials() { } } try { - $db = new PDO($constr, $creds['user'], $creds['pass']); + $db = new PDO($constr, $creds['user'], $creds['pass'], (($creds['pdo']) ? $creds['pdo'] : array())); $db = null; } catch (PDOException $e) {