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

Ошибка соединения с БД в начале следующего дня


Вопрос

Никто не встречался с данной проблемой, когда на часах 0 часов, 0 минут и на форум заходит первый пользователь и появляется Ошибка соединения с БД.

Сам форум открывается, но внизу данная ошибка.

Это как-нибудь можно исправить ?

Просьба варианты типа "Удали из файл init.php E_WARNING не предлагать".

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

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

  • 0

Думаю, что по данному вопросу нужно обращаться к хостеру.

Смотрите логи ошибок MySQL и PHP.

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

  • 0

Просто я уже сидел на многих хостингах и везде, во всех версиях форума появляется данная ошибка.

В том числе и на 127.0.0.1.

 

Вот, чо записалось в лог файл форума:

 

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

Дата: Mon, 30 Apr 2007 00:03:11 +0400

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

Ошибка: Table 'shelkovo_shelkovo.slf_sessions' doesn't exist

IP Адрес: 77.51.23.111

mySQL query error: UPDATE slf_sessions SET member_name='Hacker',member_id=1,member_group=4,login_type=0,running_time=1177876990,location='mod:gallery',in_error=0,location_1_type='list',location_1_id=37,location_2_type='',location_2_id=0,location_3_type='',location_3_id=0 WHERE id='<id>'

 

БД форума: shelkovo_forum

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

  • 0

GiV,

 

Дело в том, что есть следующие БД:

shelkovo_shelkovo - БД сайта

shelkovo_forum - БД форума

 

Вобщем происходит это тогда, когда на форум (возможно и сайт) заходит первый посетитель (ну например в 0 часов, 1 минуту).

Да и ещё могу сказать, что в index.php есть инклуд 1 файла (счётчик).

Он обращается к БД shelkovo_shelkovo.

Может быть можно его инклудить не через index.php, а через какой-нибудь другой файл ?

Если да, то подскажите в какой файл лучше вставить код и в какое место.

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

  • 0

Да вообще то через index и надо.

 

Он является bootstrap скриптом и все идет через него.

 

В самом счетчике закрывается соединение с БД?

 

Ради интереса попробуйте следующее:

 

/ips_kernel/class_db_mysql.php

 

Заменить:

if( $versions[0] == 5 AND $versions[1] == 0 AND $versions[2] == 5 )
{
define( 'FORCE_MYSQL_ONLY', 1 );
}

 

На

define( 'FORCE_MYSQL_ONLY', 1 );

 

тем самым мы говорим драйверу MySQL использовать библиотеку mysql в PHP, а не mysqli.

 

И в /conf_global.php

Добавить

$INFO['sql_force_new_connection']			=	'1';

Тем самым любой коннект к серверу MySQL приводит к порождению нового ресурса, а не копированию старого.

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

  • 0

Спасибо за ответ, чуть позже попробую так сделать.

Тоесть вы хотите сказать если соединение не закрывается, то нужно его просто закрыть ?

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

  • 0

Спасибо, действительно помогло!

В папке cache уже перестали создаваться файлы с ошибками :D

Возник только 1 вопрос:

А почему ошибка была только в начале следующего дня ?

 

Да и в начале следующего дня скрипт счётчика создавал новую строчку (запись) в БД.

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

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

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

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