Posted 24 октября, 20204 yr comment_164567 Есть пожелание от установщика: Цитата У вас есть одна или несколько таблиц InnoDB, которые используют строковый формат Compact. Это может ограничить объем данных, которые могут храниться в таблице. Мы рекомендуем изменить его на «Динамический». Если вы не знаете, как это сделать, обратитесь за помощью к своему хостинг-провайдеру или системному администратору. Менять через heidisql по одной долго а запроса не знаю. Есть методы?
24 октября, 20204 yr comment_164569 Запрос сформирует набор запросов для всех таблиц с признаком Compact SELECT CONCAT('ALTER TABLE ', SUBSTRING_INDEX(NAME,'/',-1), ' ROW_FORMAT=DYNAMIC;') FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE ROW_FORMAT='Compact'; У вас получится список типа такого, который можно скопировать, отредактировать, убрать лишнее и запустить пакетом. ALTER TABLE ibf_members ROW_FORMAT=DYNAMIC; ALTER TABLE ibf_sessions ROW_FORMAT=DYNAMIC; ALTER TABLE ibf_forsex ROW_FORMAT=DYNAMIC; Предварительно надо проверить наличие этих глобальных настроек (в файле конфигурации mysql) и добавить их, если отсутствуют. innodb_file_format=Barracuda; innodb_file_per_table=1; innodb_large_prefix=1; и рестартануть mysql сервер Никакой ответственности за результат я не несу, тренируйтесь на бекапе/тестовых таблицах. Если для вас это темный лес, то Цитата обратитесь за помощью к своему хостинг-провайдеру или системному администратору. Edited 24 октября, 20204 yr by Desti
6 ноября, 20204 yr comment_164753 Desti , тоже с этим столкнулся, ваш метод выводит совсем не то, что нужно Переменные выставил У меня почему то все таблицы в Compact
6 ноября, 20204 yr comment_164759 1 час назад, HooLIGUN сказал: У меня почему то все таблицы в Compact Судя по пустому результату у вас нет таблиц Compact. У меня одна табличка в компакте, старая какая-то, всё видно.
6 ноября, 20204 yr comment_164761 Desti Все таблицы в Compact (innoDB), и движок бы просто так не ругался.
6 ноября, 20204 yr comment_164763 Т.е. у вас в такой таблице везде в ROW_FORMAT стоит Compact, а запрос ничего не выдает?
6 ноября, 20204 yr comment_164765 Ну так же не бывает Там есть еще одна таблица, `INNODB_SYS_TABLESPACES` - в ней тоже формат обозначен, правда в другом виде, 'Compact or Redundant'.
9 января, 20213 yr comment_166747 Почти все таблицы в Compact, на запрос у меня ошибка: Цитата SELECT CONCAT('ALTER TABLE ', SUBSTRING_INDEX(NAME,'/',-1), ' ROW_FORMAT=DYNAMIC;') FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE ROW_FORMAT='Compact'; ---- Цитата Ошибка SQL запрос: https://macauto.ru/ut/mymac/themes/dot.gif SELECT CONCAT('ALTER TABLE ', SUBSTRING_INDEX(NAME,'/',-1), ' ROW_FORMAT=DYNAMIC;') FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE ROW_FORMAT='Compact' LIMIT 0, 25 Ответ MySQL: https://macauto.ru/ut/mymac/themes/dot.gif #1054 - Неизвестный столбец 'ROW_FORMAT' в 'where clause'
9 января, 20213 yr comment_166748 сделайте SHOW COLUMNS FROM `information_schema`.`INNODB_SYS_TABLES`; и покажите результат
9 января, 20213 yr comment_166751 А тут? SHOW COLUMNS FROM `information_schema`.`TABLES` where TABLE_SCHEMA='имя вашей базы'; Если есть колонка ROW_FORMAT, то сделайте так SELECT CONCAT('ALTER TABLE ', SUBSTRING_INDEX(TABLE_NAME,'/',-1), ' ROW_FORMAT=DYNAMIC;') FROM INFORMATION_SCHEMA.TABLES WHERE ROW_FORMAT='Compact' and TABLE_SCHEMA='имя вашей базы';
10 января, 20213 yr comment_166755 5.5.68-MariaDB . При выполнении запроса: SHOW COLUMNS FROM `information_schema`.`TABLES` where TABLE_SCHEMA='forum'; Ошибка SQL запрос: SHOW COLUMNS FROM `information_schema`.`TABLES` where TABLE_SCHEMA='forum' Ответ MySQL: https://macauto.ru/ut/mymac/themes/dot.gif #1054 - Неизвестный столбец 'TABLE_SCHEMA' в 'where clause' Пробовал из самой базы делать и из списка баз, результат один.
10 января, 20213 yr comment_166758 9 часов назад, Desti сказал: SELECT CONCAT('ALTER TABLE ', SUBSTRING_INDEX(TABLE_NAME,'/',-1), ' ROW_FORMAT=DYNAMIC;') FROM INFORMATION_SCHEMA.TABLES WHERE ROW_FORMAT='Compact' and TABLE_SCHEMA='имя вашей базы'; Этот запрос прошел, вывел запрос для всех кроме трех, те что с FULLINDEX и в MyISAM. По
10 января, 20213 yr comment_166764 2 часа назад, macar сказал: SHOW COLUMNS FROM `information_schema`.`TABLES` where TABLE_SCHEMA='forum'; На машкеДБ это почему-то не работает. У меня percona.
10 января, 20213 yr comment_166766 Попробовал конвертировать одну таблицу, вот что получилось, так и должно быть? Статистика строки Формат Compact Параметры row_format=DYNAMIC Сравнение utf8_unicode_ci Следующий автоматический индекс 107 335
10 января, 20213 yr comment_166772 Я не знаю, что вы делаете. Вот как это выглядит у меня: Исходное состояние, таблица ibf_banner в формате Compact Проверяем запросом, меняем, снова проверяем. Снова смотрим в сводную таблицу
10 января, 20213 yr comment_166773 Да ничего другого что тут описано я не делаю. Это мне phpmyadmin так показывает, сделал экспорт структуры таблицы которую конвертировал, вроде нормально. CREATE TABLE `ibf_autowelcome_members` ( `welcome_member_id` bigint(20) UNSIGNED NOT NULL COMMENT 'ID Number', `welcome_sent` tinyint(4) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=DYNAMIC;
10 января, 20213 yr comment_166774 Кстати , MarioDB требует формат файлов не Барракуда а Antelope Warning: #1478 InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_format > Antelope. Warning: #1478 InnoDB: assuming ROW_FORMAT=COMPACT. Edited 10 января, 20213 yr by macar
28 марта, 20231 yr comment_191297 Здравствуйте, подскажите есть уже готовое решение с этой проблемой, у меня такая же проблема сейчас, спасибо
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.