Basis data MySQL telah bebas masalah selama beberapa bulan. Hari ini ketika saya memeriksa paket yang dapat diupgrade menggunakan Synaptic Package Manager, muncul berbagai komponen MySQL (-common, -client, -server, dll). Karena itu saya memutuskan untuk memutakhirkan (saya lupa untuk mencatat versi yang diinstal tetapi saya pikir itu 5.6.21) menjadi 5.6.25-1-ubuntu2.0. Setelah itu ketika saya pergi ke query database saya mendapat pesan: -
Error occured: Can't connect to MySQL server on '127.0.0.1' (111)
Saya kemudian menemukan server tidak berjalan. Dalam file log saya suka pesan itu: -
Can't create file /var/lib/mysql/user.lower-test
Saya telah menghabiskan satu jam atau lebih mencari on line dan meskipun masalah ini telah dilaporkan sebelumnya, saya belum melihatnya dalam konteks masalah 'pasca-pembaruan' sehingga tidak yakin dengan langkah saya selanjutnya.
apparmor
diinstal dan diaktifkan secara otomatis saat Anda menginstalmysql-server-5.6
. Bahkan jika Anda sebelumnya menonaktifkannya. Anda tidak dapat menghapusapparmor
paket karena itu adalah ketergantunganmysql-server-5.6
. Anda dapat memecahkan kesalahan "Tidak dapat membuat file /var/lib/mysql/user.lower-test" dengan melakukanservice apparmor stop; service apparmor teardown; update-rc.d -f apparmor remove
Saya mengalami masalah ini ketika mencoba menjalankan beberapa instance MySQL, tetapi alih-alih menghapus apparmor, saya memperbarui file usr.sbin.mysqld:
Misalnya, inilah tampilan file saya, dan begitu saya menambahkan folder yang perlu izin tulis, semuanya berfungsi sebagaimana mestinya.
sumber
Masalah terjadi pada saya ketika saya mencoba untuk memindahkan / var / lib / mysql ke disk lain dan mengganti direktori asli dengan symlink.
Apparmor akan menolak akses dalam konfigurasi ini, lihat
mengapa ini dianggap bukan bug oleh pengembang Apparmor. Cara mengatasinya adalah menggunakan bind mount. Lihat
untuk penjelasan.
Begitu
memperbaiki masalah untuk saya.
sumber
Saya punya masalah serupa. Saya menginstal ulang Server Ubuntu pada mesin saya, membuat cadangan penuh dari / etc / pada hard drive, setelah menginstal ulang saya membuat salinan semua file penting dari / drive / etc / ke sistem saya / etc.
Saat melakukan ini, saya membuat bak untuk file usr.sbin.mysqld bernama usr.sbin.mysqld.bak dan menyimpannya di direktori /etc/apparmor.d/ yang sama.
Setelah mencari lebih lanjut, saya menemukan posting blog ini: https://blogs.oracle.com/jsmyth/apparmor-and-mysql
Menginstal apparmor-utils dan mencoba untuk mengeluh pada / usr / sbin / mysqld dan dikatakan bahwa saya memiliki 2 konfigurasi apparmor yang telah ditentukan (kedua file saya).
Saya tahu itu mungkin bukan masalah yang Anda hadapi, tetapi hanya demi kejelasan, jangan sebodoh saya, membuat file cadangan di direktori yang sama dari direktori apparmor sbin.
sumber
Periksa juga apakah partisi Anda tidak penuh, yang merupakan kasus saya.
Untuk alasan yang tidak diketahui, memindahkan data ke partisi lain juga tidak berhasil.
Jadi untuk perbaikan cepat, alih-alih mengacaukan llvm atau gparted, saya mengurangi
/swapfile
ukuran saya .sumber