Уважаемые гуру, подскажите, где рыть проблему?Есть шлюз с четырьмя сетевухами. Три подсети свои, четвертая - интернет. Для знания "кто и сколько" установил простейший netacct-mysql. Все нормально, по инструкции. Запускаю и вижу, что траффик не считается. В логах увидел такую запись:
Sep 5 08:12:55 gate2 nacctd: net accounting daemon started
Sep 5 08:12:55 gate2 nacctd: FIXME: add header info and use it (dont panic this is just msg-reminder
Sep 5 08:12:55 gate2 nacctd: net accounting daemon forked
Sep 5 08:12:56 gate2 nacctd (write): Error has occured while executing mysql_store_resultПерепроверил конфиг - все там правильно! Логин, пароль, БД - все, как доктор прописал. Попробовал ручками:
$mysql -u acct -p
Пользователь к БД коннектится. Права на запись в БД у него есть.
Где еще посмотреть - ума не приложу!
а таблицы создал?
>Пользователь к БД коннектится. Права на запись в БД у него есть.Что такое право на запись в БД? Поставьте для проверки все гранты на эту базу.
Внимательно проверьте в инструкции не нужно ли выполнить отдельный скрипт, создающий таблицы
В конце концов включите general query log в мускуле и посмотрите что происходит. Если мускул параллельно используется для чего-то другого, то запустите отдельную копию с другими значениями для рабочей директории, сокета итд
>Что такое право на запись в БД? Поставьте для проверки все гранты
>на эту базу.Гранты стоЯт - в первую очередь туда и заглянул.
>Внимательно проверьте в инструкции не нужно ли выполнить отдельный скрипт, создающий таблицы
Скрипт очень простой - руками в консоли:
#mysql -u root -p < netacct.sql
В файле прописано и создание БД, и создание пользователя, и прописывание грантов для него.
Гранты перепроверил через phpmyadmin.
Все таблицы созданы. Причем захожу на веб-морду - и вижу, что он действия мои логирует. Заглядываю в базу - записи о заходе пользователя есть.Получается в базу не пишется только траффик, т.е. то, что пытается записать демон.
Демон - бинарник, плюс конфиг к нему. Конфиг перепроверил еще раз. Перепутать там нечего: имя хоста, имя базы, логин, пароль, да какие интерфейсы слушать.Мистика какая-то! :)
Полез включать дженерал куэри лог в мускуле...
Вопрос решился! Все оказалось до безобразия просто и банально!netacct изначально я ставил из дистрибутива. Решил выкачать его же с сайта разработчиков. Последняя стабильная версия оказалась та же, что в дистрибутиве. Распаковал и посмотрел в файлик netacct.sql
И (надо же!) он отличался от дистрибутивного одной табличкой! Добавил эту табличку в БД и хожу теперь счастливый - траффик считается.Всем спасибо за участие.