Solusi 1:
Cara termudah untuk melakukannya adalah dengan menggunakan bagian klien dari file ~/.my.cnf, dan menambahkan kredensial di sana.
[client]
user=root
password=somepassword
...
sebaiknya buat file tersebut hanya dapat dibaca oleh root juga.
Solusi 2:
Untuk mysql 5.7+, jika Anda mengatur kata sandi kosong untuk pengaturan awal, mysql akan secara otomatis menggunakan auth_socket
sebagai strategi. Upaya memperbarui kata sandi tanpa mengubah strategi tidak akan membuahkan hasil. Anda selalu dapat masuk tanpa menggunakan kata sandi jika pengguna Anda adalah root
.
Solusi Jalankan perintah berikut untuk mengubah strategi autentikasi dan menyetel kata sandi
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY ''
referensi:https://www.percona.com/blog/2016/03/16/change-user-password-in-mysql-5-7-with-plugin-auth_socket/
Solusi 3:
Pada MySQL 5.6.6, Anda dapat menggunakan mysql_config_editor untuk membuat file terenkripsi yang akan memasukkan Anda secara otomatis:
mysql_config_editor set --login-path=client --host=localhost --user=root --password
Lalu masukkan kata sandi saat diminta.
Catatan:jika kata sandi Anda memiliki '#' di dalamnya, dan mungkin karakter lain, gunakan tanda kutip tunggal saat memasukkan kata sandi.