Название: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: a_eugene от 22 Февраля 2010, 16:47:22 Поставил с нуля базу v50.28 с ядром.
Со старого сервера сделал бэкап. Перенёс базу на новый. В мониторинге и логах базы все отлично, но в логах /var/db/mysql/my.hostname.err постоянно валит Цитировать 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET in1=in1+11779 12,out1=out1+57254,in2=in2+0,out2=out2+0,in3=in3+0,out3=out3+0,in4=in4+0,out4=out4+0 WHERE uid=207 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET traf1=5757582 7788,traf2=0,traf3=0,traf4=0,submoney=60.00,startmoney=63.00,packet=3 WHERE uid=207 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET in1=in1+43917 0,out1=out1+61749,in2=in2+0,out2=out2+0,in3=in3+0,out3=out3+0,in4=in4+0,out4=out4+0 WHERE uid=195 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET traf1=3701899 5532,traf2=0,traf3=0,traf4=0,submoney=100.00,startmoney=100.00,packet=4 WHERE uid=195 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET in1=in1+39354 0,out1=out1+44868,in2=in2+0,out2=out2+0,in3=in3+0,out3=out3+0,in4=in4+0,out4=out4+0 WHERE uid=194 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET traf1=2684021 031,traf2=0,traf3=0,traf4=0,submoney=100.00,startmoney=100.00,packet=4 WHERE uid=194 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET in1=in1+66960 ,out1=out1+5976,in2=in2+0,out2=out2+0,in3=in3+0,out3=out3+0,in4=in4+0,out4=out4+0 WHERE uid=200 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET traf1=6083674 7504,traf2=0,traf3=0,traf4=0,submoney=100.00,startmoney=101.00,packet=4 WHERE uid=200 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET in1=in1+26013 ,out1=out1+9296,in2=in2+0,out2=out2+0,in3=in3+0,out3=out3+0,in4=in4+0,out4=out4+0 WHERE uid=196 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET traf1=4555189 557,traf2=0,traf3=0,traf4=0,submoney=0.00,startmoney=0.00,packet=6 WHERE uid=196 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET in1=in1+2365, out1=out1+4718,in2=in2+0,out2=out2+0,in3=in3+0,out3=out3+0,in4=in4+0,out4=out4+0 WHERE uid=189 LIMIT 1 100222 16:33:06 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET traf1=1456492 6195,traf2=0,traf3=0,traf4=0,submoney=100.00,startmoney=101.00,packet=4 WHERE uid=189 LIMIT 1 Что может быть? У кого-то было такое? Название: Re: Ошибки в mysql при запуске ядра. Отправлено: a_eugene от 22 Февраля 2010, 20:02:24 Как я понял, валят ошибки от uid только следующих
6 7 11 64 68 69 70 97 187 192 193 196 200 207 210 посмотрел, что между ними общего - оказалось, что это те клиенты, у которых установлено, или БЫЛО установлено "всегда онлайн". Если включаю авторизацию, то ошибка исчезает, если возвращаю "всегда онлайн", то появляется. Создаю нового клиента и вкл. "всегда онлайн" - появляется новая ошибка. Откуда такой глюк при переносе базы? Что с ним делать? Может где-то здесь: Код: # ifconfig Код: !/bin/sh - Прошу cовета, а не бить ногами.... Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Ошибка в rc.firewall? Отправлено: Efendy от 22 Февраля 2010, 21:36:33 версия mysql?
Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Ошибка в rc.firewall? Отправлено: Efendy от 22 Февраля 2010, 21:45:51 В общем, почитал я в инете причину этого сообщения. Суть в том, что mysql при репликации (ты может ее и не используешь, но она включена) не может гарантировать, что update запрос на мастер сервере при limit проапдейтит именно те строки, которые проапдейтит слейв-сервер. Что интересно - он прав. Поле uid таблицы users_trf По сути уникальное, но mysql об этом не знает т.к. уникальность гарантируется только внутри nodeny. Короче, в консоли mysql выполни такой запрос:
Код: ALTER TABLE `users_trf` ADD UNIQUE (`uid`) надо будет подправить стабильную версию. Уточняю: это не ошибка, а предупреждение mysql о том, что разработчик _может_ ошибаться. А может и не ошибаться) Название: Re: Ошибки в mysql при запуске ядра. После переноса Отправлено: a_eugene от 22 Февраля 2010, 21:55:20 С которого переношу
Version: '6.0.11-alpha-log' socket: '/tmp/mysql.sock' port: 3306 FreeBSD port: mysql-server-6.0.11 На который переношу Version: '5.5.1-m2-log' socket: '/tmp/mysql.sock' port: 3306 FreeBSD port: mysql-server-5.5.1 Сейчас запрос попробую #mysql -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 65 Server version: 5.5.1-m2-log FreeBSD port: mysql-server-5.5.1 Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> use bill; Database changed mysql> ALTER TABLE `users_trf` ADD UNIQUE (`uid`); Query OK, 237 rows affected (0.01 sec) Records: 237 Duplicates: 0 Warnings: 0 mysql> Название: Re: Ошибки в mysql при запуске ядра. После переноса Отправлено: a_eugene от 22 Февраля 2010, 22:05:52 Командой сказал , чтобы колонка uid была уникальной.
Как мене быть теперь и что следует сделать дальше? Пока я ничего не понял....ошибка валит... Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Ошибка в rc.firewall? Отправлено: Efendy от 22 Февраля 2010, 22:25:47 1) Вообще-то на мастер слейве нужно было делать
2) Что тебя заставило ставить экспериментальные ветки mysql? Название: Re: Ошибки в mysql при запуске ядра. После переноса Отправлено: a_eugene от 22 Февраля 2010, 23:01:13 FreeBSD я поставил первый раз в жизни 4 месяца назад. До того все у меня крутилось на редхат подобных линуксах (с пятерки, когда еще федоры не было). По неопытности, короче. А с mysql я имел дело как наблюдатель, и кроме как переустановить утерянный пароль ничего не умел.
Поэтому осмелюсь задать глупый вопрос: что имеется ввиду под "мастер слейв"? Сначала ввести команду - потом бэкапить и переносить? Название: Re: Ошибки в mysql при запуске ядра. После переноса Отправлено: Efendy от 22 Февраля 2010, 23:11:40 Поэтому осмелюсь задать глупый вопрос: что имеется ввиду под "мастер слейв"? ой, это я непонятно с какого будуна такое написал) Хотел сказать, что нужно было команду на мастере (на том сервере, с которого репликация идет) выполнять, а не на слейве.Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Ошибка в rc.firewall? Отправлено: versus от 23 Февраля 2010, 10:50:30 На линуксе тоже 6 версию мускула использовал которая даже не бэтта, а альфа ? И после этого спросить почему ошибки ??
Название: Re: Ошибки в mysql при запуске ядра. После переноса Отправлено: a_eugene от 23 Февраля 2010, 11:05:52 Спасибо.Выполнил на мастере команду и перенес базу.
Были ошибки по uid 6 7 11 64 68 69 70 97 100 183 187 192 193 196 200 207 210 Остались ошибки по uid 6 7 11 64 68 69 70 97 100 183 196 210 отпали ошибки по тем, кто когда-то был "всегда онлайн". Остались только "всегда онлайн", которым доступ разрешен или удаленные "всегда онлайн". И вот такой лог добавился 100223 10:09:15 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE admin_session SET time_expi re=unix_timestamp()+14400 WHERE salt='T1-882895723NOXNbNtBmsUHFVBQhZFAyg' AND system_id='9669769286' LIMIT 1 Может быть еще и ошибка в rc.firewall? У меня же на сервере BGP и мир и Украина отдельные каналы. В курилке была похожая тема http://forum.nodeny.com.ua/index.php?topic=304.0 Меже это тоже мой случай? Кто-то может помочь? Название: Re: Ошибки в mysql при запуске ядра. После переноса Отправлено: Efendy от 25 Февраля 2010, 22:15:19 100223 10:09:15 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE admin_session SET may грит о том, что мускул как бы предупреждает, т.е ничего страшного в этом нет. Это уже вопрос ко мне. Правильно оформлять поля как уникальные, если это подразумевается. ПофиксимНазвание: Re: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: evp от 16 Декабря 2010, 14:09:30 Обнаружил, что у меня файл hostname.err раздулся до 70 ГБ за год :o
Валятся в него такие же ошибки про [Warning] Statement may not be safe to log in statement format. Statement: UPDATE users_trf SET traf1=627... Выполнил, как здесь рекомендуется Код: ALTER TABLE `users_trf` ADD UNIQUE (`uid`) Но предупреждения продолжают сыпаться. a_eugene отписался, что Цитировать отпали ошибки по тем, кто когда-то был "всегда онлайн". Проблема в том, что у меня все пользователи "всегда онлайн" и количество таких предупреждений просто немерянное.Остались только "всегда онлайн", которым доступ разрешен или удаленные "всегда онлайн". Я прекрасно понимаю, что Цитировать мускул как бы предупреждает, т.е ничего страшного в этом нет. Это уже вопрос ко мне. Правильно оформлять поля как уникальные, если это подразумевается. Пофиксим Можно ли попросить совета, как сделать так, чтобы файл не раздувался от этих предупреждений? Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: Andrey Zentavr от 16 Декабря 2010, 16:42:51 Можно ли попросить совета, как сделать так, чтобы файл не раздувался от этих предупреждений? Как вариант - отключить логи нах... Как второй вариант - использовать т.н. ротацию логов (logrotate) Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: Aivanzipper от 16 Декабря 2010, 16:53:21 Можно ли попросить совета, как сделать так, чтобы файл не раздувался от этих предупреждений? Как вариант - отключить логи нах... Как второй вариант - использовать т.н. ротацию логов (logrotate) тут уровень "Warning", это ж не просто так Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: evp от 16 Декабря 2010, 21:29:37 Как вариант - отключить логи нах... Как второй вариант - использовать т.н. ротацию логов (logrotate) Первый вариант как бы неприемлем - как отслеживать возможные ошибки в таком случае? Тем более, думаю, что так просто этот лог не отключишь. И как его ротацию сделать, в отличие от бинарных логов, я не нашел. На ум приходит только FLUSH LOGS в кроне примерно раз в месяц. Тогда старый hostname.err переименуется в hostname.err.old. И начнется новый файл. Но это как-то "некошерно" что ли? Может еще где нужно уникальный индекс создать? Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: Andrey Zentavr от 17 Декабря 2010, 00:20:40 Как вариант - отключить логи нах... Как второй вариант - использовать т.н. ротацию логов (logrotate) Первый вариант как бы неприемлем - как отслеживать возможные ошибки в таком случае? Тем более, думаю, что так просто этот лог не отключишь. И как его ротацию сделать, в отличие от бинарных логов, я не нашел. На ум приходит только FLUSH LOGS в кроне примерно раз в месяц. Тогда старый hostname.err переименуется в hostname.err.old. И начнется новый файл. Но это как-то "некошерно" что ли? Может еще где нужно уникальный индекс создать? Код: [root@gateway /usr/local/etc]# whereis logrotate Блок конфига для MySQL конфиг примерно такой Код: /var/db/mysql/mysqld.log { Конфиг MySQL примерно такой: Код: [mysqld] конфиг лежит в /var/db/mysql/my.cnf Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: ser970 от 17 Декабря 2010, 10:04:52 Как вариант - отключить логи нах... Как второй вариант - использовать т.н. ротацию логов (logrotate) Первый вариант как бы неприемлем - как отслеживать возможные ошибки в таком случае? Тем более, думаю, что так просто этот лог не отключишь. И как его ротацию сделать, в отличие от бинарных логов, я не нашел. На ум приходит только FLUSH LOGS в кроне примерно раз в месяц. Тогда старый hostname.err переименуется в hostname.err.old. И начнется новый файл. Но это как-то "некошерно" что ли? Может еще где нужно уникальный индекс создать? варнинг и ерор там разделить можно и писать только ерор Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: Rico-X от 04 Февраля 2011, 10:18:05 Также столкнулся с этой ошибкой при настройке репликации, сыпало просто жутко, не нашел ничего лучше как в конфиге my.cnf прописать
Код: log_warnings = 0 Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: il_blag от 03 Января 2015, 21:01:31 в файл /var/db/mysql/.err постоянно валит warning statement may not be safe to log in statement format. файл уже весит 31 G. Погуглил ,почитал ветку так и не понял как исправить, и что делать с этим файлом,как корректно почистить после исправления. Кто сталкивался с таким прошу помощи.Спасибо
my.conf почему то у меня лежит в /etc/my.conf В директории /var/db/mysql такого файла нет Название: Re: Ошибки в mysql при запуске ядра. После переноса базы. Отправлено: ser970 от 03 Января 2015, 21:13:47 в файл /var/db/mysql/.err постоянно валит warning statement may not be safe to log in statement format. файл уже весит 31 G. Погуглил ,почитал ветку так и не понял как исправить, и что делать с этим файлом,как корректно почистить после исправления. Кто сталкивался с таким прошу помощи.Спасибо чуть выше описано что сделать ..после правки my.cnf прибить файлик err и передернуть мускул или (лучше) удалить все в файле echo "" > /var/db/mysql/.err my.conf почему то у меня лежит в /etc/my.conf В директории /var/db/mysql такого файла нет лежит так потому как дед мороз наверное его туда положил....все таки новый год |