LINUX.ORG.RU
ФорумAdmin

не стартует mysql


0

1

поставил из source mysql. при попытке запустить bin/mysqld_safe --user=mysql & запускается на несколько секунд а затем stopped. Вот log из файла .err

110226 18:30:28 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/var
110226 18:30:29 [Note] Event Scheduler: Loaded 0 events
110226 18:30:29 [Note] /usr/local/mysql/libexec/mysqld: ready for connections.
Version: '5.1.53'  socket: '/tmp/mysql.sock'  port: 3306  Source distribution
110226 18:30:36 [Note] /usr/local/mysql/libexec/mysqld: Normal shutdown

110226 18:30:36 [Note] Event Scheduler: Purging the queue. 0 events
110226 18:30:36 [Note] /usr/local/mysql/libexec/mysqld: Shutdown complete

110226 18:30:36 mysqld_safe mysqld from pid file /usr/local/mysql/var/linux2.pid ended
. В чем причина останова сервера?

начальная база создана?
(mysql_install_db)


права у пользователя mysql есть на чтение-запись в /usr/local/mysql/var ?


почему, кстати, не захотели поставить дистрибутивный mysql ? mysql есть в любом дистрибутиве.

Sylvia ★★★★★ ()
Ответ на: комментарий от Sylvia

начальная база создана? (mysql_install_db)

да

права у пользователя mysql есть на чтение-запись в /usr/local/mysql/var ?

да

почему, кстати, не захотели поставить дистрибутивный mysql ? mysql есть в любом дистрибутиве.

В моем только 4 версия а мне надо 5

cyberovskij ()
Ответ на: комментарий от cyberovskij

Ну вот где-то в этих буковках, скорее всего, есть ответ :) Если сами не разберетесь - кидайте на pastebin полный вывод.

leave ★★★★★ ()
Ответ на: комментарий от cyberovskij

# strace -vf -o /tmp/trace.log bin/mysqld_safe --user=mysql


/tmp/trace.log будет содержать информацию о запуске, если вам сложно самим разобраться - выложите куда-нибудь ( http://paste.debian.net например )

Sylvia ★★★★★ ()
Ответ на: комментарий от cyberovskij

2860 access(«/usr/local/mysql/my.cnf», R_OK) = -1 ENOENT (No such file or directory)
2860 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
2860 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
2860 access(«/usr/local/mysql/var/my.cnf», R_OK) = -1 ENOENT (No such file or directory)


у вас нет файла конфигурации my.cnf )

возьмите один из примеров ( есть в исходниках, или устанавливается в share) отредактируйте как надо и положите в /usr/local/mysql/var

Sylvia ★★★★★ ()
Ответ на: комментарий от Sylvia

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

cyberovskij ()
Ответ на: комментарий от cyberovskij


2429 access(«/usr/local/mysql/libexec/mysqld», X_OK) = 0

вот оно нашло mysqld

2429 stat64(«/usr/local/mysql/var/mysql», {st_dev=makedev(3, 1), st_ino=1045206, st_mode=S_IFDIR|0700, st_nlink=2, st_uid=501, st_gid=501, st_blksize
=4096, st_blocks=8, st_size=4096, st_atime=2011/02/26-20:32:16, st_mtime=2011/02/21-21:33:29, st_ctime=2011/02/26-19:20:35}) = 0

вот оно нашло каталог с БД

2429 access(«/usr/local/mysql/var/my.cnf», R_OK) = 0

вот оно нашло my.cnf

дальше мне не совсем понятно... но mysqld даже не запускается

2429 waitpid(-1, 0xbfcda198, WNOHANG) = -1 ECHILD (No child processes)
2429 sigreturn() = ? (mask now [])
2429 rt_sigaction(SIGINT, {SIG_IGN}, {0x80760d4, [], 0}, 8) = 0
2429 fstat64(1, {st_dev=makedev(0, 10), st_ino=3, st_mode=S_IFCHR|0620, st_nlink=1, st_uid=0, st_gid=5, st_blksize=1024, st_blocks=0, st_rdev=makedev
(136, 1), st_atime=2011/02/26-21:40:09, st_mtime=2011/02/26-21:40:09, st_ctime=2011/02/26-21:39:23}) = 0
2429 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7d90000
2429 write(1, «110226 21:40:10 mysqld_safe WARN»..., 69) = ? ERESTARTSYS (To be restarted)
2429 --- SIGTTOU (Stopped (tty output)) @ 0 (0) ---
2429 --- SIGTTOU (Stopped (tty output)) @ 0 (0) ---
2429 write(1, «110226 21:40:10 mysqld_safe WARN»..., 69) = ? ERESTARTSYS (To be restarted)
2429 --- SIGTTOU (Stopped (tty output)) @ 0 (0) ---
2429 --- SIGTTOU (Stopped (tty output)) @ 0 (0) ---

Sylvia ★★★★★ ()

mysqld_safe mysqld from pid file /usr/local/mysql/var/linux2.pid ended

.pid файл у вас кстати тоже не создается

права на запись?

Sylvia ★★★★★ ()

А попробуйте

sh -x bin/mysqld_safe --user=mysql


выхлоп сюда

это шелл скрипт, соответственно отлаживается как шелл скрипт)

Sylvia ★★★★★ ()

Это потому что ты запускаешь фоновый процесс (mysqld_safe), который пытается писать в упр. терминал. Попробуй, например, из консоли запустить bash & . Результат будет тот же - ядро пошлет сигнал SIGTTOU, и процесс остановится.

Вообщем тебе нужно запускать как-то так:
bin/mysqld_safe --user=mysql >/dev/null 2>&1 &

Chumka ★★★ ()
Ответ на: комментарий от Chumka

)
кстати, да

а вообще в дистрибутиве есть скрипт

mysql-server
который собственно и надо использовать, если нет дистрибутивного init скрипта

mysql-server start

mysql-server stop

Sylvia ★★★★★ ()
Ответ на: комментарий от Chumka

Вообщем тебе нужно запускать как-то так: bin/mysqld_safe --user=mysql >/dev/null 2>&1 &

вроде пошло . спасибо

anonymous ()
Ответ на: комментарий от Sylvia

а вообще в дистрибутиве есть скрипт mysql-server который собственно и надо использовать, если нет дистрибутивного init скрипта

гм. А у меня нету такого

anonymous ()
Ответ на: комментарий от anonymous

дистрибутиве в смысле дистрибутиве исходников mysql

в support-files лежит mysql.server.sh

при сборке mysql он ставится в share/mysql/mysql.server
можно как инит-скрипт адаптировать, а можно и так через него запускать.

Sylvia ★★★★★ ()
Ответ на: комментарий от Deleted

[quote]Это ж с какого года ты не обновлялся? [/quote] Со времен великой октябрьской :-)

cyberovskij ()
Ответ на: комментарий от cyberovskij

Зачем?

Чтоб стояло ;-)

Зачем именно из исходников? Почему не поставить готовый пакет из репозиториев?

Deleted ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.