root mysql -u tidak berfungsi tetapi sudo root mysql -u tidak berfungsi, mengapa?


9

Saya baru-baru ini mengikuti beberapa tutorial dan menginstal mysql menggunakan sudo apt-get install mysql-server-5.7

Saya dapat terhubung ke database menggunakan kata sandi dengan menjalankan perintah berikut:

sudo mysql -u root -p

Saya mencoba terhubung dengan menjalankan:

mysql -u root -p

tapi saya mendapatkan kesalahan:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

Mengapa? Bagaimana saya bisa memperbaikinya?


2
Sayang downvoter, bisakah Anda juga memberikan alasan untuk downvote, setidaknya sebuah eksplorasi mengapa ini adalah pertanyaan bodoh?
— user1379280

Ini mungkin terkait. Lihatlah beberapa jawaban: askubuntu.com/questions/766334/…
— Terrance

Apakah Anda menetapkan kata sandi root untuk mysql selama instalasi?
— steeldriver

@steeldriver: ya saya lakukan
— user1379280

Jawaban:


23
  1. Akses dengan sudo: sudo mysql -u root -p
  2. Hapus pengguna root: drop user 'root'@'localhost';
  3. Buat pengguna root lagi: create user 'root'@'%' identified by 'your_password';
  4. Berikan izin: grant all privileges on *.* to 'root'@'%' with grant option;
  5. Perbarui tabel izin: flush privileges;
  6. Keluar dari MYSQL dan coba sambungkan kembali tanpa sudo.

Font: tidak dapat masuk sebagai root pengguna mysql dari akun pengguna normal di ubuntu 16.04


Terima kasih! Langkah-langkah ini juga berhasil untuk saya dan sekarang saya tidak perlu sudomenggunakan mysql! Sepertinya mengganti host localhostdengan %menyelesaikan masalah untuk saya.
— Vikram Hosakote

tetapi masih tidak dapat mengakses dari jarak jauh
— Ciasto piekarz

Tidak bekerja untuk saya, sekarang saya tidak bisa masuk dengan atau tanpa sudo!
— David Powell
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.