Saya sendiri baru-baru ini memiliki masalah yang sama. Saya membuatnya bekerja dengan melakukan hal berikut:
Mengedit konfigurasi MySQL
Secara default, MySQL tidak dikonfigurasi untuk menerima koneksi jarak jauh. Anda dapat mengaktifkan koneksi jarak jauh dengan memodifikasi file konfigurasi:
sudo nano /etc/mysql/my.cnf
Temukan [mysqld]
bagian. Baris yang perlu Anda ubah adalah bind-address
, yang harus disetel ke nilai default 127.0.0.1
. Anda ingin mengedit baris ini untuk menampilkan IP RPi Anda di jaringan (yang tampaknya 192.168.1.102 dari contoh Anda). Tulis perubahannya.
Mulai ulang layanan MySQL
sudo service mysql restart
Siapkan izin MySQL
Hubungkan ke instance MySQL Anda sebagai root:
mysql -p -u root
Buat pengguna:
CREATE USER '<username>'@'<ip_address>' IDENTIFIED BY '<password>';
- Apostrof ( ' ) dalam sintaks diperlukan
- Alamat IP adalah alamat IP perangkat di jaringan yang Anda coba sambungkan
Berikan izin ke database dan tabel yang relevan:
GRANT ALL PRIVILEGES ON <database>.* TO '<username>'@'<ip_address>' IDENTIFIED BY '<password>';
- Parameternya adalah yang Anda gunakan untuk membuat pengguna di langkah sebelumnya
- The * akan memberikan akses ke semua tabel dalam database yang ditentukan. Atau Anda dapat menentukan tabel tertentu
- Anda mungkin ingin memperkuat keamanan dengan hanya memberikan hak istimewa yang relevan, tetapi itu sudah cukup untuk menguji apakah itu berfungsi
Semoga itu berhasil!