Improve error message of charset convert script and behaviour

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
This commit is contained in:
Morris Jobke 2017-03-23 15:36:22 -06:00
parent f4ead7c7d3
commit 8a4466f9ae
No known key found for this signature in database
GPG Key ID: 9CE5ED29E7FCD38A
1 changed files with 5 additions and 4 deletions

View File

@ -71,17 +71,18 @@ class ConvertMysqlToMB4 extends Command {
return 1;
}
$oldValue = $this->config->getSystemValue('mysql.utf8mb4', false);
// enable charset
$this->config->setSystemValue('mysql.utf8mb4', true);
if (!$this->connection->supports4ByteText()) {
$url = $this->urlGenerator->linkToDocs('admin-mysql-utf8mb4');
$output->writeln("The database is not properly setup to use the charset utf8mb4.");
$output->writeln("Also check that the setting 'mysql.utf8mb4' is set to true in the config.php.");
$output->writeln("For more information please read the documentation at $url");
$this->config->setSystemValue('mysql.utf8mb4', $oldValue);
return 1;
}
// enable charset
$this->config->setSystemValue('mysql.utf8mb4', true);
// run conversion
$coll = new Collation($this->config, $this->logger, $this->connection, false);
$coll->run(new ConsoleOutput($output));