[image]

снова глюки MySQL

 
+
-
edit
 

Balancer

администратор
★★★★★
Сабж.
Вот, собственно, симптомы.
Подцепил старые постинги.
Запустил оптимизацию.
База умерла.
Далее - демонстрация в логах:

code text
  1. mysql> mysql> repair table ib_posts;
  2. ERROR 2006 (HY000): MySQL server has gone away
  3. No connection. Trying to reconnect...
  4. Connection id:    944
  5. Current database: FORUM
  6.  
  7.  
  8. +----------------+--------+----------+-------------------------------------------------+
  9. | Table          | Op     | Msg_type | Msg_text                                        |
  10. +----------------+--------+----------+-------------------------------------------------+
  11. | FORUM.ib_posts | repair | error    | 22 when fixing table                            |
  12. | FORUM.ib_posts | repair | error    | Can't copy datafile-header to tempfile, error 9 |
  13. | FORUM.ib_posts | repair | status   | Operation failed                                |
  14. +----------------+--------+----------+-------------------------------------------------+
  15. 3 rows in set (12 min 16,53 sec)
  16.  
  17. mysql>
  18. mysql> repair table ib_posts;
  19. ERROR 2006 (HY000): MySQL server has gone away
  20. No connection. Trying to reconnect...
  21. Connection id:    20
  22. Current database: FORUM
  23.  
  24. +----------------+--------+----------+-------------------------------------------------+
  25. | Table          | Op     | Msg_type | Msg_text                                        |
  26. +----------------+--------+----------+-------------------------------------------------+
  27. | FORUM.ib_posts | repair | error    | 22 when fixing table                            |
  28. | FORUM.ib_posts | repair | error    | Can't copy datafile-header to tempfile, error 9 |
  29. | FORUM.ib_posts | repair | status   | Operation failed                                |
  30. +----------------+--------+----------+-------------------------------------------------+
  31. 3 rows in set (13 min 9,82 sec)
  32.  
  33. mysql> repair table ib_posts quick;
  34. ERROR 2006 (HY000): MySQL server has gone away
  35. No connection. Trying to reconnect...
  36. Connection id:    3986
  37. Current database: FORUM
  38.  
  39.  
  40. +----------------+--------+----------+----------------------+
  41. | Table          | Op     | Msg_type | Msg_text             |
  42. +----------------+--------+----------+----------------------+
  43. | FORUM.ib_posts | repair | error    | 22 when fixing table |
  44. | FORUM.ib_posts | repair | status   | Operation failed     |
  45. +----------------+--------+----------+----------------------+
  46. 2 rows in set (12 min 49,92 sec)
  47.  
  48. mysql>
  49. mysql> repair table ib_posts use_frm;
  50. ERROR 2006 (HY000): MySQL server has gone away
  51. No connection. Trying to reconnect...
  52. Connection id:    3199
  53. Current database: FORUM
  54.  
  55. +----------------+--------+----------+-----------------------------------------+
  56. | Table          | Op     | Msg_type | Msg_text                                |
  57. +----------------+--------+----------+-----------------------------------------+
  58. | FORUM.ib_posts | repair | warning  | Number of rows changed from 0 to 375995 |
  59. | FORUM.ib_posts | repair | status   | OK                                      |
  60. +----------------+--------+----------+-----------------------------------------+
  61. 2 rows in set (11 min 40,25 sec)


У меня такое ощущение, что где-то что-то утыкается в лимиты ОС.
Пока шёл последний REPAIR, я параллельно ещё игрался с параметрами:
Может, оно помогло, может - USE_FRM параметр.

echo 65534 ] /proc/sys/fs/file-max # было то ли 30, то ли 50 тыс.
ulimit -n 16384 # было 1024
/proc/sys/fs/inode-max - отсутствует.

В общем, явно машине чего-то уже капитально не хватает. Вопрос - чего.
И, боюсь, что ограничение в 2Гб на файл для ext3 - это уже даже не смешно. Но что делать - я тоже теряюсь.

I need help, как говорят косноязычные :)
   
+
-
edit
 

Sokrat

модератор

] И, боюсь, что ограничение в 2Гб на файл для ext3 - это уже даже не смешно.

Не понял фразу. Такого ограничения нет...
   
+
-
edit
 

Balancer

администратор
★★★★★
Не понял фразу. Такого ограничения нет...
[»]
 


А где оно? В ядре, что ли? У меня - 2.4.20

Файлы больше 2Гб - либо в них ничего не пишется, с падением "писателя" (пример - логи Apache) или вообще теряются (словно их стёрли) - так было с дампом MySQL, см. подробности одной такой потери на http://www.deeptown.org/forum/index.php?showtopic=274
   
+
-
edit
 

Sokrat

модератор

А где оно? В ядре, что ли? У меня - 2.4.20

Файлы больше 2Гб - либо в них ничего не пишется, с падением "писателя" (пример - логи Apache) или вообще теряются (словно их стёрли) - так было с дампом MySQL, см. подробности одной такой потери на http://www.deeptown.org/forum/index.php?showtopic=274
 


Я не знаю, где ты его выкопал. :eek: Регулярно оперирую файлами размером в 4.4 GB (образы DVD) - никаких проблем. Ограничение в 2 GB я с трудом могу припомнить - это что-то времен 3+ летней давности... :rolleyes:
   
+
-
edit
 

Balancer

администратор
★★★★★
Я не знаю, где ты его выкопал. :eek:
 


С The Linux Kernel Archives взял в марте прошлого года.

Регулярно оперирую файлами размером в 4.4 GB (образы DVD) - никаких проблем. Ограничение в 2 GB я с трудом могу припомнить - это что-то времен 3+ летней давности... :rolleyes:
[»]
 


Беру файл "dump" на 1.5Гб.
cat dump ] 1

ага, есть такой файл, "1" на 1.5Гб.

cat dump ]] 1

опаньки. Файл "1" исчез как будто его и не было.

Как уже говорил, ядро 2.4.20
Linux Red Hat 7.3
Все up2date на момент отключения халявы и все текущие apt-get update/upgrade стоят.

Ну так и куда копать?
   
RU slipstream #17.07.2004 09:04
+
-
edit
 

slipstream

втянувшийся
судя по гуглу сам по себе кернел 2.4.x не гарантия не нарваться на софт собранный без поддержки LFS

http://www.google.com/search?num=100&q=ext...LARGEFILE"
http://www.google.com/search?num=100&q=&qu...quot;%20problem

интересно а dd тоже свыше 2gb обломится скопировать?
   
второй вопрос - а что будет если временно вообще не использовать ulimit?
 
RU slipstream #17.07.2004 14:11
+
-
edit
 

slipstream

втянувшийся
третий вопрос какой версии bash - 2.05a или b?

причем даже лучше так - сначала какой версии, потом убрать все ulimit, потом все остальные эксперименты ;P
   
+
-
edit
 

Kestrel

опытный

] И, боюсь, что ограничение в 2Гб на файл для ext3 - это уже даже не смешно.

Не понял фразу. Такого ограничения нет...
[»]
 



The maximum file size is going to be limited by the maximum filesystem
size, which is currently 2TB. That being said, you need to make sure
that your programs that will be accessing the file are compiled to use
the LFS API, since 32-bit Linux systems have a 2GB limitation using
the standard POSIX system calls --- this is caused by the fact that
the off_t data type is a signed 32-bit integer, and that limits you to
2GB.

Using the LFS API is pretty straightforward; it can be as simple as
adding -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE to the C compiler
options and recompiling. There are some subtleties if there are any
shared libraries involved, since this changes off_t to off64_t, and
this can break the binary interfaces to some shared libraries; see
http://www.suse.de/~aj/linux_lfs.html more more details and some other
(slightly more complicated) ways of using the LFS API.

Note that many modern distributions compile all ior most of their
userspace with the LFS API enabled, so this may not be an issue,
except for your own, home-grown C applications.
 


https://listman.redhat.com/archives/ext3-us...y/msg00046.html
   
+
-
edit
 

Balancer

администратор
★★★★★
Если по простому - что ковырять нужно, чтобы, к примеру, tar не бил более, чем 2Гб архивы при распаковке? Чтобы Апач логи больше 2Гб не рушил?
   
+
-
edit
 

Kestrel

опытный

Если по простому - что ковырять нужно, чтобы, к примеру, tar не бил более, чем 2Гб архивы при распаковке? Чтобы Апач логи больше 2Гб не рушил?
[»]
 


tar у тебя что откуда бьёт, не понял. C апачем - зависит от версии. У 2.0 есть встроенное средство для ротации логов:

http://httpd.apache.org/docs-2.0/programs/rotatelogs.html

Для первого пойдёт, например:

http://cronolog.org/
   
+
-
edit
 

Balancer

администратор
★★★★★
Апач я так, до кучи добавил. В принципе, у меня его логи каждый день webalizer'ом раздракониваются и убиваются, так что это не страшно.

Вот что с MySQL-дампами делать?
Общай дамп давно уже больше 2Гб. Дамп по базе форума скоро один за 2Гб вылезет. Дампить по таблицам - это вообще геморрой.
   
+
-
edit
 

Kestrel

опытный

Апач я так, до кучи добавил. В принципе, у меня его логи каждый день webalizer'ом раздракониваются и убиваются, так что это не страшно.

Вот что с MySQL-дампами делать?
Общай дамп давно уже больше 2Гб. Дамп по базе форума скоро один за 2Гб вылезет. Дампить по таблицам - это вообще геморрой.
[»]
 


хм. линукс не пользую, в принципе. У меня FreeBSD, а она начиная с 4.Х с большими файлами живёт нормально.

Попробуй порыть тут :

http://www.suse.de/~aj/linux_lfs.html
   
+
-
edit
 

Sokrat

модератор

Я не знаю, где ты его выкопал. :eek:
 

С The Linux Kernel Archives взял в марте прошлого года.
 


Я не про ядро, я про ограничение.
Впрочем, можно догадаться...

Как уже говорил, ядро 2.4.20
Linux Red Hat 7.3
Все up2date на момент отключения халявы и все текущие apt-get update/upgrade стоят.
 


Угу, Red Hat 7.3, а ядро, MySQL, Apache самосборные, так? Нет бы использовать нормальный дистрибутив без выкрутасов с тарболами... Вот:

code text
  1. [master@localhost master]$ tar -cf /mnt/mainhome/master/test.tar /mnt/storage/ALTLinux/Sisyphus/
  2. tar: Removing leading `/' from member names
  3. [master@localhost master]$ ls -lh /mnt/mainhome/master/test.tar
  4. -rw-r--r--  1 master master 4,6G Июл 18 03:12 /mnt/mainhome/master/test.tar
  5. [master@localhost master]$ tar -tf /mnt/mainhome/master/test.tar >/dev/null; echo $?
  6. 0


Теперь или читать http://www.suse.de/~aj/linux_lfs.html до просветления, или читать man split и вставлять эту полезную программулину всюду. Ну или проапгрэйдиться, в конце концов. :rolleyes:
   
+
-
edit
 

Balancer

администратор
★★★★★
Угу, Red Hat 7.3, а ядро, MySQL, Apache самосборные, так? Нет бы использовать нормальный дистрибутив без выкрутасов с тарболами... Вот:
[»]
 


Ну и покажи мне, в каком дистрибутиве есть MySQL 4.1.x или Apache2 оптимизированный под i686. Или с родным ядром, которое на март прошлого года держало гигабитные интеловские сетевухи.

А в теории - да, всё прекрасно и замечательно. И без выкрутасов.

Ну или проапгрэйдиться, в конце концов.
[»]
 


Только для этого с высокой вероятностью придётся сервер домой забирать на пару дней. Со всеми вытекающими для Авиабазы последствиями. А то б давно уже Gentoo поставил.
   
+
-
edit
 

Kestrel

опытный

Угу, Red Hat 7.3, а ядро, MySQL, Apache самосборные, так? Нет бы использовать нормальный дистрибутив без выкрутасов с тарболами... Вот:
 


В самосборном софте ничего плохого нет, сам только так и делаю. Но вот старый дистр, древнее ядро...
   
+
-
edit
 

Sokrat

модератор

Ну и покажи мне, в каком дистрибутиве есть MySQL 4.1.x или Apache2 оптимизированный под i686.
[»]
 


Под i686 обычно не оптимизируют - делают под i586 (таких дистрибутивов полно). Разница в производительности будет в доли процента, но если тебе этого хочется - пересобирай SRPMS из дистрибутива с указанием требуемой архитектуры и прочего.

Или с родным ядром, которое на март прошлого года держало гигабитные интеловские сетевухи.
[»]
 


Пересобирать ядро ради сетевухи - это мочить мух атомными бомбами. Я для этого собирал нужный модуль и все.

А в теории - да, всё прекрасно и замечательно. И без выкрутасов.
[»]
 


Эти и на практике так, но если очень постараться - да, можно проблем насобирать. :D

Ну или проапгрэйдиться, в конце концов.
[»]
 

Только для этого с высокой вероятностью придётся сервер домой забирать на пару дней.
[»]
 


Э-э-э... Час на миграцию основной функциональности, два на все (без мелких деталей, про которые обычно сначала забываешь). Но можно и медленнее, конечно... :blink:
   
+
-
edit
 

Balancer

администратор
★★★★★
Под i686 обычно не оптимизируют - делают под i586 (таких дистрибутивов полно). Разница в производительности будет в доли процента, но если тебе этого хочется - пересобирай SRPMS из дистрибутива с указанием требуемой архитектуры и прочего.
 


Про соотношение 586/686 не скажу, не щупал, но оптимизация под 686 против дефолтового 386 (586 я только в Mandrake видел) дала очень существенное снижение средней загрузки CPU httpd - с средних ~5..10% до ~3..5%. Что, кстати, и на скорости форума очень заметно сказалось. gzip, однако.

Пересобирать ядро ради сетевухи - это мочить мух атомными бомбами. Я для этого собирал нужный модуль и все.
 


Не вставал тогда модуль без серьёзных ковыряний в ядре. Естественно, мне бы проще было модуль собрать. Но перекомпиляции ядра требовала штатная сборка модуля.

Э-э-э... Час на миграцию основной функциональности, два на все (без мелких деталей, про которые обычно сначала забываешь). Но можно и медленнее, конечно... :blink:
[»]
 


Я же говорю - теоретик ты, не практик.
   
+
-
edit
 

Sokrat

модератор

Про соотношение 586/686 не скажу, не щупал, но оптимизация под 686 против дефолтового 386 (586 я только в Mandrake видел) дала очень существенное снижение средней загрузки CPU httpd - с средних ~5..10% до ~3..5%. Что, кстати, и на скорости форума очень заметно сказалось. gzip, однако.
[»]
 


386/686 - да, существенная разница, а я как раз про 586/686 говорил. Под i586 собирается не только Mandrake и отпочковавшиеся от него (ALT Linux, например), но и SuSE.

Не вставал тогда модуль без серьёзных ковыряний в ядре. Естественно, мне бы проще было модуль собрать. Но перекомпиляции ядра требовала штатная сборка модуля.
[»]
 


Ну очень, очень странный модуль... Код модуля и мне, бывало, приходилось фиксить, но чтоб ядро пересобирать...

Я же говорю - теоретик ты, не практик.
[»]
 


10 баллов... :lol: Странно только, что у меня, "теоретика", все работает как часы, а у тебя, "практика", ХЗ как... :rolleyes:
   
+
-
edit
 

Balancer

администратор
★★★★★
10 баллов... :lol: Странно только, что у меня, "теоретика", все работает как часы, а у тебя, "практика", ХЗ как... :rolleyes:
[»]
 


Хорошо, давай на практике расскажи мне, как к материнке SE7500WV2 и к корпусу подключить CD-ROM, например. С USB она грузиться не умеет, SCSI-CD-ROM'а у меня нет, стандартного разъёма питания для CD-ROM там тоже нет.

И ещё ты не ответил (выборочные ответы - это тоже практика такая?) - какой из дистрибутивов позволит мне поставить пакет MySQL 4.1.x? А из каких пакетов собирать Procmail+Courier-IMAP+Maildir's+SpamAssassin? А что за пакеты c Jabberd/JIT? Наконец, как в ALT Linux с пакетом Perl-5.8.3?
   
+
-
edit
 

Sokrat

модератор

Хорошо, давай на практике расскажи мне, как к материнке SE7500WV2 и к корпусу подключить CD-ROM, например. С USB она грузиться не умеет, SCSI-CD-ROM'а у меня нет, стандартного разъёма питания для CD-ROM там тоже нет.
[»]
 


А что, это я такую материнку выбрал? :blink:

И ещё ты не ответил (выборочные ответы - это тоже практика такая?) - какой из дистрибутивов позволит мне поставить пакет MySQL 4.1.x?
[»]
 


Скорее всего, никакой - ветка 4.1 еще в бете, редкий камикадзе поставит ее на production сервер.

А из каких пакетов собирать Procmail+Courier-IMAP+Maildir's+SpamAssassin?
[»]
 


Что за страсть все собирать? Уже собрано...
procmail-3.22-alt4.i586.rpm
courier-imap-2.1.2-alt2.1.i586.rpm
spamassassin-2.63-alt1.i586.rpm

А что за пакеты c Jabberd/JIT?
[»]
 


jabber-1.4.3-alt4.1.i586.rpm
jabber-jit-1.1.6-alt2.i586.rpm

Наконец, как в ALT Linux с пакетом Perl-5.8.3?
[»]
 


perl-base-5.8.4-alt1.i586.rpm
   
RU Balancer #18.07.2004 13:04  @Balancer#18.07.2004 11:56
+
-
edit
 

Balancer

администратор
★★★★★
А что, это я такую материнку выбрал? :blink:
[»]
 


Я же говорю - теоретик.
Во-первых, где ты был, когда вопрос выбора был насущным.
Во-вторых, я и сейчас считаю, что выбор оптимальный. Достаточно того факта, что за больше, чем год работы при полном отсутствии обслуживания не было ни одного "железного" сбоя.
В-третьих, а ты бы что посоветовал? Под 1U и гарантированно безглючное? И не сейчас, а год назад? Желательно двухпроцессорное, не меньше 1.5ГГц?

Скорее всего, никакой - ветка 4.1 еще в бете, редкий камикадзе поставит ее на production сервер.
 


Ну а чего тогда руками размахиваешь "только пакеты, никаких тарболов!". Я просто показываю ситуацию, когда без тарбола - никак и твои теоретизирования оказываются в полной [censored] на практике.

Что за страсть все собирать? Уже собрано...
procmail-3.22-alt4.i586.rpm
courier-imap-2.1.2-alt2.1.i586.rpm
spamassassin-2.63-alt1.i586.rpm
 


Я, ведь, не зря написал "+" в связке. Меня интересуют пакеты не по отдельности, а в указанной выше связке. Так как мне на уровне пакетов организовать сброс входящей почты в Maildir/ (не в mailbox!) с фильтрацией через spamassassin? Да ещё с виртуальными серверами? С mailbox - да, никаких проблем. А так - опять теоретизирование.

Кроме того, что это за courier-imap версии 2.1.2? У меня, вообще-то, 3.03 стоит.

jabber-1.4.3-alt4.1.i586.rpm
jabber-jit-1.1.6-alt2.i586.rpm
 


И что мне тольку с этих RPM, если всё равно сорцы патчить нужно?

perl-base-5.8.4-alt1.i586.rpm
[»]
 


Ну, хоть что-то хорошего есть :)
Правда, у меня 5.8.3 стоял когда на ALT'е был только 5.6.x
А с 5.6.x уже тогда не работали некоторые CPAN-модули.
   

Vale

Сальсолёт
★☆
]И что мне тольку с этих RPM, если всё равно сорцы патчить нужно?

Ставишь ?????-src.rpm и патчишь сколько влезет.

Кстати говоря, книги по компьютерной безопасности очень рекомендуют не засвечивать конкретную версию софта, что стоит у тебя.

Ещё кстати - мой персональный Intranet-сервер (полтора года назад запущенный) наконец переезжает с WinChip C6/200 на Duron-600! :D А всё из-за файлопомойки - Барракудины на 120 Гбайт :)
Стоять будет по-прежнему ALT Linux Master 2.2 :D

И наконец, говорят, ядро 2.6 - вещь очень хорошая для веб-серверов ;) но я не вдавался в подробности...
   
+
-
edit
 

Balancer

администратор
★★★★★
Ставишь ?????-src.rpm и патчишь сколько влезет.
 


Ну так и чем это лучше тарболов? :)

Кстати говоря, книги по компьютерной безопасности очень рекомендуют не засвечивать конкретную версию софта, что стоит у тебя.
 


:)

И наконец, говорят, ядро 2.6 - вещь очень хорошая для веб-серверов ;) но я не вдавался в подробности...
 


Хорошая-то она хорошая, но по любому ядро апгрейдить на Авиабазе я не скоро решусь :)
   

ceci_

втянувшийся

Balancer, 18.07.2004 18:52:18:
Ставишь ?????-src.rpm и патчишь сколько влезет.
 


Ну так и чем это лучше тарболов? :)
 

Лучше управление софтом, легче обновлять и т.д.
   
Это сообщение редактировалось 24.07.2004 в 15:11

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru