Saya memiliki server web sederhana (Debian 6.0 x86, DirectAdmin dengan memori 1 GB dan masih 10 GB ruang kosong, versi mySQl 5.5.9), namun server mySQL terus macet dan saya harus mematikan semua proses mySQL untuk dapat memulai kembali lagi.
/var/log/mysql-error.log
keluaran:
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.
Saya telah menemukan topik di situs web mySQL di sini namun tidak ada solusi untuk itu.
Ada ide?
Jawaban:
pendekatan lain dari satu komentar di blog yang sama:
via http://www.webhostingtalk.com/archive/index.php/t-1070293.html
sumber
service mysql restart
sudah menunjukkan tidak ada proses yang berjalan, tetapilsof
menemukannya. Membunuhnyaservice mysql start
,, dan sekarang banjir proses email gagal dapat berhenti. Terimakasih banyak.dengan ubuntu 14.04. Saya mengalami masalah ini ketika saya mencoba me-restart via
Alih-alih mencoba
sumber
service job start
, jika tidak, jika Anda memulainya dengan skrip init.d, Upstart tidak akan mengetahuinya dan dapat mencoba untuk mem-boot instance lain. (Setidaknya itulah yang terjadi dengan skrip init default MySQL.)service
nama - nama pelengkap tab . Mungkin mengirimkan permintaan fitur ke Canonical melalui pelacak bug mereka?Penyebab paling umum dari masalah ini adalah mencoba untuk memulai MySQL ketika sudah berjalan.
Untuk mengatasinya, matikan semua instance MySQL yang berjalan dan kemudian restart menggunakan skrip startup normal Anda, mis
service mysql start
.Jangan mencoba untuk memulai MySQL secara manual ketika menggunakan versi paket distribusi kecuali Anda siap untuk dunia yang terluka.
sumber
however the mySQL server keeps crashing
- Saya tidak memulai ulang mySQL. Itu hanya crash sendiri, setelah itu saya perlu me-restart itu dengan jelas. ;-)Larutan
buat salinan dari file asli (ibdata1, ib_logfile0, ib_logfile1 ...).
http://cglreport.zhenhua.info/2008/08/mysql-error-unable-to-lock-ibdata1.html
sumber
Ini membantu saya untuk menyelesaikannya:
Hapus semua file ibdata dan biarkan mysql membuatnya.
hentikan mysql:
buka perpustakaan mysql:
pindahkan file innodb di suatu tempat jika Anda membutuhkannya:
mulai mysql:
sumber
Datang ke sini dari googling dari kesalahan berulang yang sama tetapi dengan kode kesalahan 13 (
InnoDB: Unable to lock ./ibdata1, error: 13
). Setelah mencoba banyak solusi di internet, menemukan satu yang membantu saya (apparmor!)Tambahkan baris-baris ini ke config
/etc/apparmor.d/usr.sbin.mysqld
(dan tentu saja memuat ulang apparmor dan mysql):Perbedaan utama antara sering solusi: dua aturan (untuk dir itu sendiri dan untuk semua file di dalamnya, perhatikan ganda
**
) dank
opsi untuk memungkinkan mysql untuk mengunci file.Semoga ini bisa membantu seseorang.
sumber
/etc/apparmor.d/local/usr.sbin.mysqld
. Buat file jika tidak ada. Untuk detail lebih lanjut, silakan lihat/etc/apparmor.d/local/README
Periksa ruang untuk memastikannya 100%
Seolah penuh itu tidak akan membuat file .sock.
sumber
Harap periksa bahwa Anda memiliki
pid-file
parameter di[mysql]
bagianmy.cnf
file. Jika tidak ada, ituunable to lock ...ibdata1.. error:1
akan terjadi.sumber
Sederhana, tetapi lebih cepat dari cara dengan "cp -a". Dan membantu ketika "cp -a" dan yang lainnya tidak bisa.
service mysql stop && pkill -f mysql
Singkirkan semua proses mysql
vi /etc/mysql/my.cnf
Ubah parameter datadir = / var / lib / mysql ke datadir = / var / lib / mysql2 (atau tambahkan saja jika Anda tidak punya)
mv /var/lib/mysql /var/lib/mysql2
Ubah nama datadir menjadi nama baru
service mysql start
Siapkan rebana Anda
sumber
Jika tidak ada solusi lain yang berfungsi, masalahnya mungkin berasal dari kesalahan konfigurasi AppArmor.
Jadi lakukan saja:
dan kemudian restart MySQL (perhatikan seberapa cepat akan restart).
Saya perhatikan ada file yang hilang terkait dengan AppArmor ketika melakukan:
Karenanya mengapa saya pikir ada sesuatu yang salah dengan konfigurasi AppArmor.
sumber