MySQL 5.7 Tanpa direktori, masuk dengan HOME = /

16

Maaf jika pertanyaan ini sudah diajukan, tetapi saya tidak dapat menemukan solusi untuk masalah ini (mungkin kecil):

Saya baru saja membuat instalasi baru mysql-server 5.7 pada server 14.04. Setiap kali layanan MySQL dimulai, saya mendapatkan kesalahan ini:

root@xxx:/etc/mysql# service mysql restart
 * Stopping MySQL Community Server 5.7.11
...
 * MySQL Community Server 5.7.11 is stopped
 * Re-starting MySQL Community Server 5.7.11
No directory, logging in with HOME=/
..
 * MySQL Community Server 5.7.11 is started

Apa artinya? Apakah saya harus menetapkan direktori home ke pengguna "mysql"? (dan jika demikian, apa pilihan terbaik? / home / mysql ??) Sekarang ke / tidak ada:

mysql:x:110:106:MySQL Server,,,:/nonexistent:/bin/false

tapi saya punya komputer lain dengan yang sama / tidak ada, dan tidak menunjukkan kesalahan ...

kacang
sumber
1
/ var / log / mysql ;-) lihat: askubuntu.com/questions/539440/…
Rinzwind
ok, dalam kasus saya ini dimulai dan tampaknya berfungsi dengan baik, itu hanya menunjukkan pemberitahuan itu
the_nuts

Jawaban:

31

Memiliki masalah yang sama untuk menghilangkan kesalahan ini, saya melakukan hal berikut

  1. Hentikan layanan MYSQL:

    sudo service mysql stop

  2. Ubah direktori home mysql dari tidak ada ke direktori asli yang seharusnya:

    sudo usermod -d /var/lib/mysql/ mysql

Sekarang mulai server mysql lagi dengan:

sudo service mysql start

Pesan kesalahan telah hilang. Namun mengapa ini terjadi tidak diketahui.

Abdul Hayee
sumber
1
Mungkin ini pekerjaan yang sulit, tetapi saya tidak setuju dengan ini. / home / untuk pengguna. Bukan untuk membuat tempat bagi pengguna tiruan yang dibutuhkan untuk keamanan / izin / apa pun. Orang yang menyarankan / home / mysql dan membuat pengguna mysql yang sebenarnya harus ditegur dengan serius .
Rinzwind
/ var / lib o / var / log? Lagi pula, direktori itu sepertinya tidak akan diisi dengan data apa pun
the_nuts
2
ya ini solusinya, beri tahu saya ketika Anda menemukan solusi.
Abdul Hayee
1
Menurut posting ini , Red Hat memiliki direktori home mysql diatur ke /var/lib/mysql. Jadi ini sepertinya ok ....
ostrokach
2
Untuk apa nilainya, saya mendapatkan kesalahan ini ketika saya menjalankan mysql di Windows WSL. Kesalahan berhenti terjadi setelah saya keluar dari mysqld.exe di Windows. Port 3306 diklaim oleh proses Windows.
Azeirah
0

Saya akan menyarankan lebih jauh solusi permanen, jika selalu dijalankan dari dir yang sama seperti yang saya kira seharusnya mengapa tidak mengedit pengguna mysql di / etc / passwd:

mysql:x:106:111:MySQL Server,,,:/var/lib/mysql/:/bin/false
aman
sumber