У меня есть простой веб-сервер (Debian 6.0 x86, DirectAdmin с 1 ГБ памяти и 10 ГБ свободного места, mySQl версии 5.5.9), однако сервер mySQL продолжает падать, и мне нужно убить все процессы mySQL, чтобы иметь возможность перезапустить его опять таки.
/var/log/mysql-error.log
выход:
130210 21:04:26 InnoDB: Using Linux native AIO
130210 21:04:34 InnoDB: Initializing buffer pool, size = 128.0M
130210 21:05:42 InnoDB: Completed initialization of buffer pool
130210 21:05:48 InnoDB: Initializing buffer pool, size = 128.0M
130210 21:06:22 InnoDB: Initializing buffer pool, size = 128.0M
130210 21:06:27 mysqld_safe mysqld from pid file /usr/local/mysql/data/website.pid ended
130210 21:06:29 mysqld_safe mysqld from pid file /usr/local/mysql/data/website.pid ended
130210 21:07:22 InnoDB: Completed initialization of buffer pool
130210 21:07:51 mysqld_safe mysqld from pid file /usr/local/mysql/data/website.pid ended
130210 21:08:33 InnoDB: Completed initialization of buffer pool
130210 21:12:03 [Note] Plugin 'FEDERATED' is disabled.
130210 21:12:47 InnoDB: The InnoDB memory heap is disabled
130210 21:12:47 InnoDB: Mutexes and rw_locks use InnoDB's own implementation
130210 21:12:47 InnoDB: Compressed tables use zlib 1.2.3
130210 21:12:47 InnoDB: Using Linux native AIO
130210 21:13:11 InnoDB: highest supported file format is Barracuda.
130210 21:13:23 InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
130210 21:14:05 InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Unable to lock ./ibdata1, error: 11
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 11
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 11
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
130210 21:17:53 InnoDB: Unable to open the first data file
InnoDB: Error in opening ./ibdata1
130210 21:17:53 InnoDB: Operating system error number 11 in a file operation.
Я нашел тему на веб-сайте mySQL здесь, но нет никакого решения для этого.
Любые идеи кто-нибудь?
Ответы:
другой подход из одного комментария в том же блоге:
через http://www.webhostingtalk.com/archive/index.php/t-1070293.html
источник
service mysql restart
уже не показывал запущенный процесс, ноlsof
нашел его. Убил его,service mysql start
и теперь поток неудачных писем может прекратиться. Большое спасибо.с убунту 14.04. Я испытываю эту проблему, когда пытаюсь перезапустить через
Вместо этого попробуйте
источник
service job start
, иначе, если вы запустите его с помощью скрипта init.d, Upstart не узнает об этом и может попытаться загрузить другой экземпляр. (По крайней мере, так обстоит дело со сценариями инициализации MySQL по умолчанию.)service
именах, заканчивающих табуляцию . Может быть, отправить запрос функции в Canonical через их трекер ошибок?Наиболее распространенная причина этой проблемы - попытка запустить MySQL, когда он уже запущен.
Чтобы решить эту проблему, убейте все запущенные экземпляры MySQL, а затем перезапустите его, используя обычные сценарии запуска, например
service mysql start
.Не пытайтесь запустить MySQL вручную при использовании дистрибутивных версий, если вы не готовы к серьезным последствиям.
источник
however the mySQL server keeps crashing
- Я не перезагружаю MySQL. Он просто вылетает сам, после чего мне, очевидно, нужно перезапустить его. ;-)Решение
сделать копию оригинальных файлов (ibdata1, ib_logfile0, ib_logfile1 ...).
http://cglreport.zhenhua.info/2008/08/mysql-error-unable-to-lock-ibdata1.html
источник
Это помогло мне решить это:
Удалите все файлы ibdata и позвольте mysql создать их.
остановите mysql:
перейдите в библиотеку mysql:
Переместите куда-нибудь файлы innodb, если вам это нужно:
начать MySQL:
источник
Пришел сюда из поисковика той же повторяющейся ошибки, но с кодом ошибки 13 (
InnoDB: Unable to lock ./ibdata1, error: 13
). Перепробовав множество решений в интернете, изобрел одно, которое помогло мне (apparmor!)Добавьте эти строки в конфигурацию
/etc/apparmor.d/usr.sbin.mysqld
(и перезагрузите apparmor и mysql, конечно):Основные различия между часто встречающимися решениями: два правила (для самого dir и для всех файлов внутри, обратите внимание на двойное
**
) иk
опция, позволяющая mysql блокировать файлы.Надеюсь, это поможет кому-то.
источник
/etc/apparmor.d/local/usr.sbin.mysqld
. Создайте файл, если он не существует. Для получения более подробной информации, пожалуйста, смотрите/etc/apparmor.d/local/README
Проверьте место, чтобы убедиться, что это 100%
Как будто его полный он не будет создавать файл .sock.
источник
Пожалуйста, проверьте, что у вас есть
pid-file
параметр в[mysql]
разделеmy.cnf
файла. Если его нет, тоunable to lock ...ibdata1.. error:1
произойдет.источник
Просто, но быстрее, чем с "cp -a". И помогло, когда "cp -a" и все остальные не смогли.
service mysql stop && pkill -f mysql
Избавьтесь от всех процессов MySQL
vi /etc/mysql/my.cnf
Измените параметр datadir = / var / lib / mysql на datadir = / var / lib / mysql2 (или просто добавьте, если у вас его нет)
mv /var/lib/mysql /var/lib/mysql2
Переименуйте датадир в новое имя
service mysql start
Приготовь свой бубен
источник
Если ни одно из других решений не работает, проблема, вероятно, связана с неправильной настройкой AppArmor.
Так что просто сделайте:
и затем перезапустите MySQL (обратите внимание, как быстро он будет перезагружен).
Я заметил, что отсутствует файл, связанный с AppArmor при выполнении:
Поэтому я подумал, что что-то не так с конфигурацией AppArmor.
источник