Isu Sambungan Jauh dengan MySQL pada Ubuntu
Walaupun memberikan keistimewaan capaian jauh kepada pengguna, pengguna menghadapi kesukaran menyambung dari jauh ke pelayan MySQL mereka. Artikel ini menangani isu ini dan menyediakan penyelesaian yang komprehensif.
Menyelesaikan Masalah Ralat Sambungan Jauh
Satu isu biasa ialah terlupa untuk menyahtanda baris alamat bind dalam fail konfigurasi MySQL. Untuk MySQL versi 5.6 dan ke bawah, baris ini terdapat dalam /etc/mysql/my.cnf, manakala untuk versi 5.7 dan ke atas, ia berada dalam /etc/mysql/mysql.conf.d/mysqld.cnf. Nyahtanda baris dan tetapkan ia ke alamat IP pelayan atau 0.0.0.0 untuk akses tanpa had.
Menyemak Sambungan MySQL
Untuk mengesahkan bahawa MySQL mendengar pada IP yang betul alamat, jalankan
lsof -i -P | grep :3306
Ini sepatutnya memaparkan port pendengaran dengan alamat IP pelayan. Jika ini gagal, pastikan MySQL benar-benar mendengar pada alamat IP yang ditentukan.
Memberi Keistimewaan Akses Jauh
Walaupun dengan alamat bind yang betul, pengguna jauh mungkin masih menghadapi isu akses. Untuk menyelesaikan masalah ini, pengguna mesti dicipta dengan keistimewaan yang sama untuk localhost dan %. Contohnya:
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass'; CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
Seterusnya, berikan pengguna semua keistimewaan pada *.*:
GRANT ALL ON *.* TO 'myuser'@'localhost'; GRANT ALL ON *.* TO 'myuser'@'%';
Penyelesaian Masalah Tambahan
Jika lsof melakukannya tidak berfungsi, pertimbangkan untuk memasangnya untuk pengedaran Linux khusus anda. Selain itu, semak fail konfigurasi /etc/mysql/mariadb.conf.d/50-server.cnf untuk sebarang tetapan alamat bind yang bercanggah. Dengan melaksanakan penyelesaian ini, pengguna boleh mewujudkan sambungan jauh yang berjaya ke pelayan MySQL mereka di Ubuntu.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menyambung Dari Jauh ke Pelayan MySQL Saya di Ubuntu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!