Zitat von
tschero
Kannst Du irgendwo sehen, welche Datenbanktabellen betroffen/zu groß sind und dann ggf. den Feldtyp umstellen auf BLOB oder TEXT?
Z.B. in diesem Post https://community.contao.org/de/show...l=1#post562109 wird der Befehl und die Tabelle ausgewiesen.
Bei meiner Fehlermeldung im Installtool sehe ich nur den Fehler und Hinweis auf das /var/log.
Muss mal versuchen herauszufinden, wie ich dies herausbekomme.
Ich vermute aber, dass es sich auch um die tl_module handelt.
Ich habe mir auch noch die Dateien:Zeile in der Fehlermeldung angeschaut, dies hilft mir aber wohl nicht weiter.
Code:
ExceptionConverter.php
117 return new DriverException($exception, $query);
Connection.php
28 public function exec(string $sql): int
29 {
30 try {
31 $result = $this->connection->exec($sql);
32
33 assert($result !== false);
Exception.php
28 return new self($exception->getMessage(), $sqlState, $code, $exception);
Debugmodus eingeschaltet und Installtool laufen lassen.
Aus dem StackTrace
DriverException
Code:
Doctrine\DBAL\Exception\DriverException:
An exception occurred while executing a query: SQLSTATE[42000]: Syntax error or access violation: 1118 Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
at vendor/doctrine/dbal/src/Driver/API/MySQL/ExceptionConverter.php:117
at Doctrine\DBAL\Driver\API\MySQL\ExceptionConverter->convert(object(Exception), object(Query))
(vendor/doctrine/dbal/src/Connection.php:1818)
at Doctrine\DBAL\Connection->handleDriverException(object(Exception), object(Query))
(vendor/doctrine/dbal/src/Connection.php:1761)
at Doctrine\DBAL\Connection->convertExceptionDuringQuery(object(Exception), 'ALTER TABLE tl_module ENGINE = InnoDB ROW_FORMAT = DYNAMIC', array(), array())
(vendor/doctrine/dbal/src/Connection.php:1137)
at Doctrine\DBAL\Connection->executeStatement('ALTER TABLE tl_module ENGINE = InnoDB ROW_FORMAT = DYNAMIC')
(vendor/contao/installation-bundle/src/Database/Installer.php:84)
at Contao\InstallationBundle\Database\Installer->execCommand('2377d3e675d4636834477c2aabbcb006')
(vendor/contao/installation-bundle/src/Controller/InstallationController.php:390)
at Contao\InstallationBundle\Controller\InstallationController->adjustDatabaseTables()
(vendor/contao/installation-bundle/src/Controller/InstallationController.php:100)
at Contao\InstallationBundle\Controller\InstallationController->installAction()
(vendor/symfony/http-kernel/HttpKernel.php:153)
at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
(vendor/symfony/http-kernel/HttpKernel.php:75)
at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
(vendor/symfony/http-kernel/Kernel.php:202)
at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
(public/index.php:44)
Exception
Code:
Doctrine\DBAL\Driver\PDO\Exception:
SQLSTATE[42000]: Syntax error or access violation: 1118 Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
at vendor/doctrine/dbal/src/Driver/PDO/Exception.php:28
at Doctrine\DBAL\Driver\PDO\Exception::new(object(PDOException))
(vendor/doctrine/dbal/src/Driver/PDO/Connection.php:37)
at Doctrine\DBAL\Driver\PDO\Connection->exec('ALTER TABLE tl_module ENGINE = InnoDB ROW_FORMAT = DYNAMIC')
(vendor/doctrine/dbal/src/Driver/Middleware/AbstractConnectionMiddleware.php:46)
at Doctrine\DBAL\Driver\Middleware\AbstractConnectionMiddleware->exec('ALTER TABLE tl_module ENGINE = InnoDB ROW_FORMAT = DYNAMIC')
(vendor/doctrine/dbal/src/Logging/Connection.php:50)
at Doctrine\DBAL\Logging\Connection->exec('ALTER TABLE tl_module ENGINE = InnoDB ROW_FORMAT = DYNAMIC')
(vendor/doctrine/dbal/src/Driver/Middleware/AbstractConnectionMiddleware.php:46)
at Doctrine\DBAL\Driver\Middleware\AbstractConnectionMiddleware->exec('ALTER TABLE tl_module ENGINE = InnoDB ROW_FORMAT = DYNAMIC')
(vendor/symfony/doctrine-bridge/Middleware/Debug/Connection.php:85)
at Symfony\Bridge\Doctrine\Middleware\Debug\Connection->exec('ALTER TABLE tl_module ENGINE = InnoDB ROW_FORMAT = DYNAMIC')
(vendor/doctrine/dbal/src/Connection.php:1135)
at Doctrine\DBAL\Connection->executeStatement('ALTER TABLE tl_module ENGINE = InnoDB ROW_FORMAT = DYNAMIC')
(vendor/contao/installation-bundle/src/Database/Installer.php:84)
at Contao\InstallationBundle\Database\Installer->execCommand('2377d3e675d4636834477c2aabbcb006')
(vendor/contao/installation-bundle/src/Controller/InstallationController.php:390)
at Contao\InstallationBundle\Controller\InstallationController->adjustDatabaseTables()
(vendor/contao/installation-bundle/src/Controller/InstallationController.php:100)
at Contao\InstallationBundle\Controller\InstallationController->installAction()
(vendor/symfony/http-kernel/HttpKernel.php:153)
at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
(vendor/symfony/http-kernel/HttpKernel.php:75)
at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
(vendor/symfony/http-kernel/Kernel.php:202)
at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
(public/index.php:44)
PDOException bringt denselben SQL Befehl wie die oberen zwei.
SQLSTATE[42000]: Syntax error or access violation: 1118 Row size too large (> 8126). Changing some columns to TEXT or BLOB may help.
Was muss ich da wo und wie ändern ???