Saya mengikuti tutorial laut digital ini untuk Ubuntu 14.04 untuk menginstal mysql di Ubuntu 16.04 untuk proyek Rails saya. Saya mungkin salah berasumsi bahwa prosedurnya sama.
Namun, ketika saya menjalankan perintah sudo mysql_install_db
, saya menerima kesalahan berikut:
2016-06-15 18:40:36 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2016-06-15 18:40:36 [ERROR] The data directory needs to be specified.
Bagaimana saya bisa menyelesaikan pengaturan? Saya telah berhasil mengikuti prosedur yang sama beberapa kali sebelumnya di Ubuntu 14.04.
mysqld --initialize
?mysqld: Can't create directory '/var/lib/mysql/' (Errcode: 17 - File exists) 2016-06-15T14:00:28.483462Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2016-06-15T14:00:28.484374Z 0 [ERROR] Aborting
/var/lib/mysql
dan menjalankan kembali--initialize
proses tersebut.Jawaban:
Instalasi server MySQL melibatkan sekitar tiga langkah: 1) membongkar perangkat lunak; 2) membuat database default; 3) membuat pengguna / kata sandi default (dan menyimpannya dalam database).
Jika Anda secara tidak sengaja kehilangan file database (biasanya terletak di
/var/lib/mysql
) maka Anda dapat memulai lagi tanpa sepenuhnya menginstal ulang paket server. Ini dilakukan dengan perintahmysqld --initialize
. Jika Anda menjalankan perintah ini ketika database sudah ada, itu akan melaporkan kesalahan ("File ada") dan itu tidak akan mencoba untuk menimpa database. Namun, jika Anda tidak yakin apakah prosedur instalasi telah selesai dengan benar, tidak apa-apa untuk menghapus direktori/var/lib/mysql
dan menginisialisasi ulang database.The
--initialize
bendera akan menyebabkan MySQL untuk menghasilkan user root dan password acak, yang kemudian ditulis ke file log. Untuk informasi lebih lanjut, lihatman mysqld
.sumber
Pertama periksa versi Mysql menggunakan
mysql --version
.Jika Anda memiliki versi 5.7.6 atau lebih baru, direktori data akan diinisialisasi secara otomatis dan tidak perlu dijalankan
sudo mysql_install_db
.beberapa info lebih lanjut tentang menginstal mysql di server DigitalOcean ada di https://www.digitalocean.com/community/tutorials/how-to-install-mysql-on-ubuntu-14-04
sumber