Перейти к контенту
  • 0

Ошибка на 10 шаге


ModernTalking

Вопрос

При установке форума на 10 шаге вылетает ошибка:

К сожалению, на данный момент из-за технических проблем с базой данных, форум не может обработать ваш запрос. О проблеме уже сообщено администрации форума.

 

Приносим свои извинения за причиненные неудобства.

 

 

В адресной строке данный адрес:

http://isoftmaker.ru/admin/install/index.p...&do=acphelp

 

Форум устанавливал с нуля!

 

Вот что в логах:

Дата: Sat, 12 Sep 2009 03:21:26 +0000

Номер ошибки: 1267

Ошибка: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='

IP Адрес: 127.0.0.1

Страница: /admin/install/index.php?app=install&section=install&do=acphelp

Отладочная информация: array (

1 =>

array (

'file' => '/home/esetclubru/domains/isoftmaker.ru/public_html/ips_kernel/classDb.php',

'line' => 988,

'function' => 'query',

'class' => 'db_driver_mysql',

),

4 =>

array (

'file' => '/home/esetclubru/domains/isoftmaker.ru/public_html/admin/setup/applications/install/sections/install.php',

'line' => 1392,

'function' => 'helpFilesXMLImport_app',

'class' => 'admin_core_tools_help',

),

5 =>

array (

'file' => '/home/esetclubru/domains/isoftmaker.ru/public_html/admin/setup/applications/install/sections/install.php',

'line' => 126,

'function' => 'install_acphelp',

'class' => 'install_install',

),

6 =>

array (

'file' => '/home/esetclubru/domains/isoftmaker.ru/public_html/admin/setup/sources/base/ipsController_setup.php',

'line' => 251,

'function' => 'doExecute',

'class' => 'install_install',

),

)

mySQL query error: SELECT id FROM faq WHERE app='core' AND title = 'Поиск'

===================================================

 

Исходя из этого поста:

Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE)

Ыыыы! Базу данных под ipboard вы ведь не посмотрев кодировку создавали? Дефолтную latin1_swedish_ci оставили)

я так понимаю, что нужно что-то где-то поменять...подскажите, что и где!

Изменено пользователем ModernTalking
Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

Удалить базу данных и создать новую, изначально в utf-8. Как вариант, выполнить на существующей базе операцию:

 

ALTER DATABASE dbname DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Удалить базу данных и создать новую, изначально в utf-8. Как вариант, выполнить на существующей базе операцию:

 

ALTER DATABASE dbname DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Именно.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
А какой запрос нужно выполнить на создание БД, чтобы она изначально была в utf8?
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Я в MySQL не силен. Сам делал через phpMyAdmin :D

 

Так что раз ты базу то уже создал - то просто введи команду что указана выше.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Удалить базу данных и создать новую, изначально в utf-8. Как вариант, выполнить на существующей базе операцию:

 

ALTER DATABASE dbname DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Ваша неправда.... если установить utf8_unicode_ci - позже будут проблемы с хуками... базу делаем как в инструкции обновления а именно utf8_general_ci - потому что именно в этой кодировке встает часть модов. В данной кодировке должна быть как база, так и все таблицы в ней после установки форума...

 

хотя по методике запроса вы правы на 100%

только запрос такой:

ALTER DATABASE dbname DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

Изменено пользователем amelcreate
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Удалить базу данных и создать новую, изначально в utf-8. Как вариант, выполнить на существующей базе операцию:

 

ALTER DATABASE dbname DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Ваша неправда.... если установить utf8_unicode_ci - позже будут проблемы с хуками... базу делаем как в инструкции обновления а именно utf8_general_ci - потому что именно в этой кодировке встает часть модов. В данной кодировке должна быть как база, так и все таблицы в ней после установки форума...

 

хотя по методике запроса вы правы на 100%

только запрос такой:

ALTER DATABASE dbname DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

 

Позволю себе прервать нелепые слухи и домыслы и сразу же обратиться к документации mysql - http://dev.mysql.com/doc/refman/5.0/en/cha...icode-sets.html. Внимательное ознакомление с данной статьей позволит вам осознать, что utf8_general_ci и utf8_unicode_ci - это не кодировки, а способы сравнения букв и слов, что существует много различных collations, и сделать среди них правильный выбор вы всегда можете для себя сами.

 

Я предпочитаю utf8_unicode_ci исключительно потому, что это самый правильный и точный метод сравнения. Он учитывает множество особенностей европейских и азиатских языков, например, тот факт, что в немецком языке ß = ss. Если вы можете пожертвовать точностью сортировки и поиска по форуму ради производительности - пожалуйста, выбирайте для себя utf8_general_ci. Вот только утверждать, что что-то перестанет работать, что "не встанут моды" и что "в данной кодировке должна быть как база, так и все таблицы" - это абсолютно безграмотное утверждение.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Такая же проблема возникла при обновлении с 3.0.2 до 3.0.3

mySQL query error: SELECT m.*,a.* FROM ibf_core_sys_module m,ibf_core_applications a WHERE m.sys_module_visible=1 AND m.sys_module_application=a.app_directory ORDER BY a.app_position, m.sys_module_position ASC

SQL error: Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operation '='
SQL error code: 1267
Date: Tuesday 22nd o  September 2009 05:56:09 AM

 

Вся база в utf8_unicode_ci. Подскажите как поправить чтобы обновление встало нормально.

 

Up. Проблема решена.

В таблице ibf_core_sys_module оказались сравнения выставлены на utf8_general_ci. Поменял на utf8_unicode_ci все прошло нормально.

Изменено пользователем envine
Ссылка на комментарий
Поделиться на других сайтах

  • 0
В таблице ibf_core_sys_module оказались сравнения выставлены на utf8_general_ci. Поменял на utf8_unicode_ci все прошло нормально.

Да, кстати, это важный момент. Вся база данных и все таблицы должны использовать один и тот же collation.

 

Когда устанавливаются моды - IP.Board берет дефолные настройки collation, так что если вы сконвертировали БД как utf8_general_ci, то и для всей БД поставьте utf8_general_ci, и наоборот. Иначе будут проблемы с установкой некоторых (не всех) модов.

Ссылка на комментарий
Поделиться на других сайтах

Гость
Эта тема закрыта для публикации сообщений.
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.