let's see if that works :P
Signed-off-by: Michael Kaufmann <d00p@froxlor.org>
This commit is contained in:
@@ -209,14 +209,9 @@ class FroxlorInstall
|
|||||||
|
|
||||||
// check for mysql-root-connection
|
// check for mysql-root-connection
|
||||||
$content .= $this->_status_message('begin', $this->_lng['install']['testing_mysql']);
|
$content .= $this->_status_message('begin', $this->_lng['install']['testing_mysql']);
|
||||||
|
|
||||||
$version_server = PDO::getAttribute(PDO::ATTR_SERVER_VERSION);
|
|
||||||
$sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
|
||||||
if (version_compare($version_server, '8.0.11', '<')) {
|
|
||||||
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
|
||||||
}
|
|
||||||
$options = array(
|
$options = array(
|
||||||
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8,sql_mode="' . $sql_mode . '"'
|
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8'
|
||||||
);
|
);
|
||||||
$dsn = "mysql:host=" . $this->_data['mysql_host'] . ";";
|
$dsn = "mysql:host=" . $this->_data['mysql_host'] . ";";
|
||||||
$fatal_fail = false;
|
$fatal_fail = false;
|
||||||
@@ -239,6 +234,12 @@ class FroxlorInstall
|
|||||||
$fatal_fail = true;
|
$fatal_fail = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$version_server = $db_root->getAttribute(PDO::ATTR_SERVER_VERSION);
|
||||||
|
$sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
||||||
|
if (version_compare($version_server, '8.0.11', '<')) {
|
||||||
|
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
||||||
|
}
|
||||||
|
$db_root->exec('SET sql_mode = "'.$sql_mode.'"');
|
||||||
|
|
||||||
if (! $fatal_fail) {
|
if (! $fatal_fail) {
|
||||||
|
|
||||||
@@ -252,18 +253,19 @@ class FroxlorInstall
|
|||||||
$content .= $this->_importDatabaseData();
|
$content .= $this->_importDatabaseData();
|
||||||
if (! $this->_abort) {
|
if (! $this->_abort) {
|
||||||
// create DB object for new database
|
// create DB object for new database
|
||||||
$version_server = PDO::getAttribute(PDO::ATTR_SERVER_VERSION);
|
|
||||||
$sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
|
||||||
if (version_compare($version_server, '8.0.11', '<')) {
|
|
||||||
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
|
||||||
}
|
|
||||||
$options = array(
|
$options = array(
|
||||||
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8,sql_mode="' . $sql_mode . '"'
|
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8'
|
||||||
);
|
);
|
||||||
$dsn = "mysql:host=" . $this->_data['mysql_host'] . ";dbname=" . $this->_data['mysql_database'] . ";";
|
$dsn = "mysql:host=" . $this->_data['mysql_host'] . ";dbname=" . $this->_data['mysql_database'] . ";";
|
||||||
$another_fail = false;
|
$another_fail = false;
|
||||||
try {
|
try {
|
||||||
$db = new PDO($dsn, $this->_data['mysql_unpriv_user'], $this->_data['mysql_unpriv_pass'], $options);
|
$db = new PDO($dsn, $this->_data['mysql_unpriv_user'], $this->_data['mysql_unpriv_pass'], $options);
|
||||||
|
$version_server = $db->getAttribute(PDO::ATTR_SERVER_VERSION);
|
||||||
|
$sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
||||||
|
if (version_compare($version_server, '8.0.11', '<')) {
|
||||||
|
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
||||||
|
}
|
||||||
|
$db->exec('SET sql_mode = "'.$sql_mode.'"');
|
||||||
} catch (PDOException $e) {
|
} catch (PDOException $e) {
|
||||||
// dafuq? this should have happened in _importDatabaseData()
|
// dafuq? this should have happened in _importDatabaseData()
|
||||||
$content .= $this->_status_message('red', $e->getMessage());
|
$content .= $this->_status_message('red', $e->getMessage());
|
||||||
@@ -535,7 +537,7 @@ class FroxlorInstall
|
|||||||
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
||||||
}
|
}
|
||||||
$options = array(
|
$options = array(
|
||||||
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8,sql_mode="' . $sql_mode . '"'
|
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8'
|
||||||
);
|
);
|
||||||
$dsn = "mysql:host=" . $this->_data['mysql_host'] . ";dbname=" . $this->_data['mysql_database'] . ";";
|
$dsn = "mysql:host=" . $this->_data['mysql_host'] . ";dbname=" . $this->_data['mysql_database'] . ";";
|
||||||
$fatal_fail = false;
|
$fatal_fail = false;
|
||||||
@@ -548,6 +550,12 @@ class FroxlorInstall
|
|||||||
foreach ($attributes as $k => $v) {
|
foreach ($attributes as $k => $v) {
|
||||||
$db->setAttribute(constant("PDO::" . $k), constant("PDO::" . $v));
|
$db->setAttribute(constant("PDO::" . $k), constant("PDO::" . $v));
|
||||||
}
|
}
|
||||||
|
$version_server = $db->getAttribute(PDO::ATTR_SERVER_VERSION);
|
||||||
|
$sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
||||||
|
if (version_compare($version_server, '8.0.11', '<')) {
|
||||||
|
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
||||||
|
}
|
||||||
|
$db->exec('SET sql_mode = "'.$sql_mode.'"');
|
||||||
} catch (PDOException $e) {
|
} catch (PDOException $e) {
|
||||||
$content .= $this->_status_message('red', $e->getMessage());
|
$content .= $this->_status_message('red', $e->getMessage());
|
||||||
$fatal_fail = true;
|
$fatal_fail = true;
|
||||||
|
|||||||
@@ -267,13 +267,8 @@ class Database {
|
|||||||
// build up connection string
|
// build up connection string
|
||||||
$driver = 'mysql';
|
$driver = 'mysql';
|
||||||
$dsn = $driver.":";
|
$dsn = $driver.":";
|
||||||
$version_server = PDO::getAttribute(PDO::ATTR_SERVER_VERSION);
|
|
||||||
$sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
|
||||||
if (version_compare($version_server, '8.0.11', '<')) {
|
|
||||||
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
|
||||||
}
|
|
||||||
$options = array(
|
$options = array(
|
||||||
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8,sql_mode="' . $sql_mode . '"'
|
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8'
|
||||||
);
|
);
|
||||||
$attributes = array('ATTR_ERRMODE' => 'ERRMODE_EXCEPTION');
|
$attributes = array('ATTR_ERRMODE' => 'ERRMODE_EXCEPTION');
|
||||||
|
|
||||||
@@ -311,6 +306,13 @@ class Database {
|
|||||||
self::$_link->setAttribute(constant("PDO::".$k), constant("PDO::".$v));
|
self::$_link->setAttribute(constant("PDO::".$k), constant("PDO::".$v));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$version_server = self::$_link->getAttribute(PDO::ATTR_SERVER_VERSION);
|
||||||
|
$sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
||||||
|
if (version_compare($version_server, '8.0.11', '<')) {
|
||||||
|
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
||||||
|
}
|
||||||
|
self::$_link->exec('SET sql_mode = "'.$sql_mode.'"');
|
||||||
|
|
||||||
// return PDO instance
|
// return PDO instance
|
||||||
return self::$_link;
|
return self::$_link;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,13 +41,8 @@ class PowerDNS
|
|||||||
// build up connection string
|
// build up connection string
|
||||||
$driver = 'mysql';
|
$driver = 'mysql';
|
||||||
$dsn = $driver . ":";
|
$dsn = $driver . ":";
|
||||||
$version_server = PDO::getAttribute(PDO::ATTR_SERVER_VERSION);
|
|
||||||
$sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
|
||||||
if (version_compare($version_server, '8.0.11', '<')) {
|
|
||||||
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
|
||||||
}
|
|
||||||
$options = array(
|
$options = array(
|
||||||
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8,sql_mode="' . $sql_mode . '"'
|
'PDO::MYSQL_ATTR_INIT_COMMAND' => 'SET names utf8'
|
||||||
);
|
);
|
||||||
$attributes = array(
|
$attributes = array(
|
||||||
'ATTR_ERRMODE' => 'ERRMODE_EXCEPTION'
|
'ATTR_ERRMODE' => 'ERRMODE_EXCEPTION'
|
||||||
@@ -85,6 +80,13 @@ class PowerDNS
|
|||||||
foreach ($attributes as $k => $v) {
|
foreach ($attributes as $k => $v) {
|
||||||
self::$pdns_db->setAttribute(constant("PDO::" . $k), constant("PDO::" . $v));
|
self::$pdns_db->setAttribute(constant("PDO::" . $k), constant("PDO::" . $v));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$version_server = self::$pdns_db->getAttribute(PDO::ATTR_SERVER_VERSION);
|
||||||
|
$sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
||||||
|
if (version_compare($version_server, '8.0.11', '<')) {
|
||||||
|
$sql_mode .= ',NO_AUTO_CREATE_USER';
|
||||||
|
}
|
||||||
|
self::$pdns_db->exec('SET sql_mode = "'.$sql_mode.'"');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user