Saat Anda mengalami kesalahan akses ditolak, artinya koneksi TCP telah dibuat , tetapi sandi yang Anda berikan salah untuk'User'@'Host'
(pasangan User-Host adalah akun nyata untuk otentikasi MySQL, bukan nama pengguna tunggal).
Asumsikan bahwa server MySQL berjalan pada 172.0.0.8
dan alamat lokal Anda adalah 172.0.0.5
.
- Lihat
mysql.user
oleh:SELECT * FROM mysql.user\G;
. Jika Anda tidak dapat menemukan salah satu dari dua pasangan Host-Pengguna ini:'root'@'172.0.0.5'
dan'root'@'%'
, itu berarti tidak ada akun seperti itu. Jadi Anda gagal. - Periksa juga sandi dari pasangan User-Host yang ada dari output di atas.
- Sekarang, koneksinya baik-baik saja, akunnya ada, kata sandinya benar, satu-satunya peluang untuk kesalahan seperti itu adalah:mysqldbcompare tidak menggunakan argumen yang Anda berikan!
- Coba solusi lain seperti:
mysqldbcompare --server1=root:[email protected]:3306 --skip-data-check db1:db2
Periksa semua hal ini selangkah demi selangkah, dan Anda akan mengetahuinya.