Атаман Posted October 24, 2014 Share Posted October 24, 2014 При проверке индексов. Заметил такую вещь. 50% таблиц было посыпано в краснуху. Восстанавливал и в ручную запросами и автоматически. Но осталось 3 таблицы битые: При ручном или автоматическом запросе ошибка БД. Самая интерестная таблица. Она восстанавливается и минуту, снова битая. ibf_rc_classes com_id Отсутствует индекс: onoff Нажмите здесь для исправления индексов этой таблицы или вы можете выполнить следующие запросы вручную. ALTER TABLE ibf_rc_classes DROP INDEX onoff, ADD INDEX onoff (onoff,mod_group_perm(255)) ibf_topics tid topic_firstpost last_post forum_id starter_id last_post_sorting start_date Отсутствует индекс: last_x_topics Нажмите здесь для исправления индексов этой таблицы или вы можете выполнить следующие запросы вручную. ALTER TABLE ibf_topics DROP INDEX last_x_topics, ADD INDEX last_x_topics (forum_id,approved,start_date) ibf_tags_index id app Отсутствует индекс: tag_grab Нажмите здесь для исправления индексов этой таблицы или вы можете выполнить следующие запросы вручную. ALTER TABLE ibf_tags_index DROP INDEX tag_grab, ADD INDEX tag_grab (app,type,type_id,type_2,type_id_2,tag_hidden) Ошибка бд ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Date: Fri, 24 Oct 2014 05:54:43 +0000 Error: 1091 - Can't DROP 'last_x_topics'; check that column/key exists IP Address: - /forum/s_admin_s/index.php?adsess=124415c68ecb6c83b7c1ee6eeb870b4b&app=core&module=diagnostics§ion=diagnostics§ion=diagnostics&do=dbindex&fix=ibf_topics ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: ALTER TABLE ibf_topics DROP INDEX last_x_topics, ADD INDEX last_x_topics (forum_id,approved,start_date) .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. | File | Function | Line No. | |-----------------------------------------------------------------------------+------------------------------------------------------------------------------+-------------------| | s_admin_s/applications/core/modules_admin/diagnostics/diagnostics.php | [db_tools].dbIndexDiag | 795 | '-----------------------------------------------------------------------------+------------------------------------------------------------------------------+-------------------' | s_admin_s/applications/core/modules_admin/diagnostics/diagnostics.php | [admin_core_diagnostics_diagnostics]._indexCheck | 110 | '-----------------------------------------------------------------------------+------------------------------------------------------------------------------+-------------------' | s_admin_s/sources/base/ipsController.php | [admin_core_diagnostics_diagnostics].doExecute | 285 | '-----------------------------------------------------------------------------+------------------------------------------------------------------------------+-------------------' ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Date: Fri, 24 Oct 2014 06:00:55 +0000 Error: 1091 - Can't DROP 'last_x_topics'; check that column/key exists IP Address: - /forum/s_admin_s/index.php?adsess=124415c68ecb6c83b7c1ee6eeb870b4b&app=core&module=diagnostics§ion=diagnostics§ion=diagnostics&do=dbindex&fix=ibf_topics ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: ALTER TABLE ibf_topics DROP INDEX last_x_topics, ADD INDEX last_x_topics (forum_id,approved,start_date) .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. | File | Function | Line No. | |----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------| | s_admin_s/applications/core/modules_admin/diagnostics/diagnostics.php | [db_tools].dbIndexDiag | 795 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' | s_admin_s/applications/core/modules_admin/diagnostics/diagnostics.php | [admin_core_diagnostics_diagnostics]._indexCheck | 110 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' | s_admin_s/sources/base/ipsController.php | [admin_core_diagnostics_diagnostics].doExecute | 285 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Date: Fri, 24 Oct 2014 06:06:09 +0000 Error: 1091 - Can't DROP 'tag_grab'; check that column/key exists IP Address: - /forum/s_admin_s/index.php?adsess=124415c68ecb6c83b7c1ee6eeb870b4b&app=core&module=diagnostics§ion=diagnostics§ion=diagnostics&do=dbindex&fix=ibf_tags_index ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: ALTER TABLE ibf_tags_index DROP INDEX tag_grab, ADD INDEX tag_grab (app,type,type_id,type_2,type_id_2,tag_hidden) .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. | File | Function | Line No. | |----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------| | s_admin_s/applications/core/modules_admin/diagnostics/diagnostics.php | [db_tools].dbIndexDiag | 795 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' | s_admin_s/applications/core/modules_admin/diagnostics/diagnostics.php | [admin_core_diagnostics_diagnostics]._indexCheck | 110 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' | s_admin_s/sources/base/ipsController.php | [admin_core_diagnostics_diagnostics].doExecute | 285 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' Link to comment Share on other sites More sharing options...
newbie Posted October 24, 2014 Share Posted October 24, 2014 ibf_rc_classes com_id Отсутствует индекс: onoff Нажмите здесь для исправления индексов этой таблицы или вы можете выполнить следующие запросы вручную. ALTER TABLE ibf_rc_classes DROP INDEX onoff, ADD INDEX onoff (onoff,mod_group_perm(255)) В начале Вам пишут "Отсутствует индекс: onoff"Далее предлагают выполнить запрос ALTER TABLE ibf_rc_classes DROP INDEX onoff, ADD INDEX onoff (onoff,mod_group_perm(255))Обратите внимание на DROP INDEX onoffПолучается, что Вы пытаетесь удалить то, чего нет. То же касается и остальных таблиц. Link to comment Share on other sites More sharing options...
Атаман Posted October 24, 2014 Author Share Posted October 24, 2014 увидел. спс. Но почему оно тогда такие запросы составило? Link to comment Share on other sites More sharing options...
Атаман Posted October 24, 2014 Author Share Posted October 24, 2014 Но она существует...... ibf_tags_index - вообще пустая. Её можно удалить и просто через ац создать я так понимаю... Link to comment Share on other sites More sharing options...
Атаман Posted October 24, 2014 Author Share Posted October 24, 2014 Я так понимаю нужно выполнить запросы ? ALTER TABLE ibf_rc_classes ADD INDEX onoff (onoff,mod_group_perm(255)) - onoff существует. Но я так понимаю, что-то в нём не хватает? ALTER TABLE ibf_topics ADD INDEX last_x_topics (forum_id,approved,start_date) ALTER TABLE ibf_tags_index ADD INDEX tag_grab (app,type,type_id,type_2,type_id_2,tag_hidden) Link to comment Share on other sites More sharing options...
newbie Posted October 24, 2014 Share Posted October 24, 2014 Я так понимаю нужно выполнить запросы ?Да. onoff существует. Но я так понимаю, что-то в нём не хватает?Столбец существует. Индексы - другая штука. 1 Link to comment Share on other sites More sharing options...
siv1987 Posted October 24, 2014 Share Posted October 24, 2014 Но она существует......Существует поле, а одноименный индекс этого поле судя по всему отсутствует. В таких случаях, если выдает ошибку Can't DROP 'last_x_topics'; check that column/key exists нужно удалить из запроса DROP INDEX %index_name% ALTER TABLE ibf_topics ADD INDEX last_x_topics (forum_id,approved,start_date) 1 Link to comment Share on other sites More sharing options...
Атаман Posted October 24, 2014 Author Share Posted October 24, 2014 Спасибо, всем за разъяснения. ;) Link to comment Share on other sites More sharing options...
siv1987 Posted October 24, 2014 Share Posted October 24, 2014 А за одно и регулярное выражение написал для исправления логов "в одну строку" от тех, кто не правильно копирует логи на форум :) Find: (\S)[ ]{1,4}(mySQL query|\| File|\| \w+/|Date: |Error: |IP Address: |[.'|]?----) Replace: \1\n \2 1 Link to comment Share on other sites More sharing options...
Атаман Posted October 25, 2014 Author Share Posted October 25, 2014 А за одно и регулярное выражение написал для исправления логов "в одну строку" от тех, кто не правильно копирует логи на форум :) Вот за-это спасибо. По всякому уже пытался, потом без ббкода, но не в одну строку я писал это точно). Я вручную добавлял bbcode ошибка[/ code] Link to comment Share on other sites More sharing options...
Атаман Posted October 28, 2014 Author Share Posted October 28, 2014 Интересное. Выполняю ALTER TABLE ibf_rc_classes ADD INDEX onoff (onoff,mod_group_perm(255)) Показывает, что существует индекс. Выполняю запрос:ALTER TABLE ibf_rc_classes DROP INDEX onoff Выполнилось Выполняю:ADD INDEX onoff (onoff,mod_group_perm(255)) Выполнилось Но ошибка все равно существует.... Link to comment Share on other sites More sharing options...
siv1987 Posted October 28, 2014 Share Posted October 28, 2014 О том, что нет индекса? ANALYZE TABLE ibf_rc_classes OK? SHOW CREATE TABLE ibf_rc_classes индекс есть? Link to comment Share on other sites More sharing options...
Атаман Posted October 28, 2014 Author Share Posted October 28, 2014 ANALYZE TABLE ibf_rc_classesзапрос выполнен Результаты ручного запроса ibf_rc_classesSHOW CREATE TABLE ibf_rc_classes CREATE TABLE `ibf_rc_classes` ( `com_id` smallint(4) NOT NULL AUTO_INCREMENT, `onoff` tinyint(1) NOT NULL DEFAULT '0', `class_title` varchar(255) NOT NULL DEFAULT '', `class_desc` mediumtext NOT NULL, `author` varchar(255) NOT NULL DEFAULT '', `author_url` varchar(255) NOT NULL DEFAULT '', `pversion` varchar(255) NOT NULL DEFAULT '', `my_class` varchar(100) NOT NULL DEFAULT '', `group_can_report` varchar(255) NOT NULL DEFAULT '', `mod_group_perm` varchar(255) NOT NULL DEFAULT '', `extra_data` mediumtext NOT NULL, `lockd` tinyint(1) NOT NULL DEFAULT '0', `app` varchar(32) NOT NULL, PRIMARY KEY (`com_id`), KEY `onoff_2` (`onoff`,`mod_group_perm`), KEY `onoff` (`onoff`,`mod_group_perm`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 Link to comment Share on other sites More sharing options...
siv1987 Posted October 28, 2014 Share Posted October 28, 2014 Даже два индекса... Тогда можно забить, скорее всего проблемы в ипб с определением индекса. Link to comment Share on other sites More sharing options...
Атаман Posted October 28, 2014 Author Share Posted October 28, 2014 http://community.invisionpower.com/resources/bugs.html/_/ip-board/upgrader-sql-error-r23452 Скорее всего. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now