Задать вопрос

Почему не запускается MySQL?

Всем доброго времени суток!

Есть ВМ с CentOS 6.5. И есть проблема с MySQL.
1. При перезагрузке ВМ не запускается MYSQL, помогает
service mysqld stop
mv /var/lib/mysqld/mysqld.sock /var/lib/mysqld/mysqld.sock.bak
service mysqld start


Пытаюсь разобраться почему не запускается MySQL. И тут сталкиваюсь со второй проблемой. Не происходит логирование. В mysqld.log пусто. Создал новый файл, дал права на запись и в конфиге указал на него, но все равно логи не идут.

Конфиг

#
# Basic mysql configuration. Use bvat for advanced settings.
# Parameters set by bvat are stored in /etc/mysql/conf.d/bvat.cnf.
# If you want to change any parameter, you'll have to redefine it in /etc/mysql/conf.d/z_bx_custom.cnf
#

[client]
port = 3306
socket = /var/lib/mysqld/mysqld.sock
default-character-set = utf8

[mysqld_safe]
nice = 0
socket = /var/lib/mysqld/mysqld.sock

[mysqld]

# Basic mysql server configuration
user = mysql
port = 3306
basedir = /usr
datadir = /var/lib/mysql
socket = /var/lib/mysqld/mysqld.sock
skip-external-locking
bind-address = 127.0.0.1
default-storage-engine = innodb
pid-file = /var/run/mysqld/mysqld.pid
transaction-isolation = READ-COMMITTED
max_allowed_packet = 16M
myisam-recover = BACKUP
expire_logs_days = 10
max_binlog_size = 100M
log =/var/log/mysql.log

# Cache parameters
query_cache_size = 32M
table_open_cache = 4096
thread_cache_size = 32
key_buffer = 16M
thread_stack = 128K
join_buffer_size = 2M
sort_buffer_size = 2M

# Parameters for temporary tables
tmpdir = /tmp
max_heap_table_size = 32M
tmp_table_size = 32M

# InnoDB parameters
innodb_file_per_table
innodb_buffer_pool_size = 32M
innodb_flush_log_at_trx_commit = 2
innodb_log_file_size = 64M
innodb_flush_method = O_DIRECT

# Database charset parameters
character-set-server = utf8
collation-server = utf8_unicode_ci
init-connect = "SET NAMES utf8 COLLATE utf8_unicode_ci"
skip-character-set-client-handshake

[mysqldump]
quick
quote-names
max_allowed_packet = 16M
default-character-set = utf8

[mysql]

[isamchk]
key_buffer = 16M

# Include additional settings
!includedir /etc/mysql/conf.d/



Главная цель - разобраться почему не логируется. А если еще подскажите по 1 проблеме, то будет вообще круто.
  • Вопрос задан
  • 7925 просмотров
Подписаться 5 Оценить 3 комментария
Пригласить эксперта
Ответы на вопрос 1
Еще не нашли причину проблемы?

Может быть, не хватает прав на промежуточные директории, чтобы добраться до файла; может быть, в конфиге указан все-таки не тот файл, который потом смотрите. Может быть еще что-то.

Когда происходит такое "непонятно что" с файлами и процессами, очень полезен strace, который выводит все сделанные системные вызовы с параметрами и результатами (man strace)
Чтобы проследить и за всеми дочерними процессами -- ключ -f

Т.е. делаете что-то вроде
sudo strace -f -s 2000 /usr/bin/mysqld_safe --defaults-file=/etc/mysql/my.cnf 2>strace_log

(с поправкой на конфиг и бинарник)
и изучаете strace_log.

В первую очередь интересно:
* делается ли open на файл лога,
* какой результат у open'а,
* делаются ли write с номером дескриптора, который вернул open.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы