Ketika saya ingin membangun koneksi antara database dan program Python dengan SQLAlchemy di Google Colab, terjadi kesalahan mengatakan. [mysql. penyambung. kesalahan. InterfaceError] 2003. Tidak dapat terhubung ke server MySQL di 'localhost. 3306’ [111 Koneksi ditolak] dan Tidak dapat tersambung ke server MySQL di ‘localhost. 3306’ [Errno 99] Tidak dapat menetapkan alamat yang diminta
Inilah solusi saya. Ini juga dapat dipahami tentang cara mengizinkan koneksi basis data MySQL jarak jauh
Langkah 1. Ubah alamat bind
sudo vim /usr/local/etc/my.cnf
Meskipun lokasi 'bind-address' dalam file tidak tetap, mungkin meringkasnya
- /etc/mysql/mysql. conf. d/mysqld. cnf
2. /etc/mysql/mariadb.conf. conf. d/50-server. cnf
3. /etc/mysql/mysql. conf. d
4. /etc/mysql/mariadb.conf. conf. d
5. /etc/mysql/my. conf
……
Di dalam. cnf, misinya adalah mengganti 'bind-address = 127. 0. 0. 1’ dengan ‘bind-address = 0. 0. 0. 0'
Pertama, 'Ctrl + v' untuk masuk ke mode —VISUAL BLOCK —. Gunakan tombol panah untuk memilih garis yang perlu disesuaikan
Kedua, tekan 'Shift+i' untuk masuk ke mode penyisipan. Artinya, kami akan mengomentari baris 'bind-address = 127. 0. 0. 1' dengan '#' dan sisipkan baris baru 'bind-address = 0. 0. 0. 0'
Setelah selesai semua modifikasi, tekan 'ESC' untuk mengubah mode, lalu input
- w- simpan file, bukan keluar dari vim
2. . w file- simpan perubahan sebagai file baru, bukan keluar dari vim
3. . wq- simpan file dan keluar
Sebelum langkah selanjutnya, centang perubahan do exits di file target
Langkah 2. Mulai ulang Server MySQL
service mysql start
_Langkah3. Buat pengguna baru untuk dikunjungi dari jarak jauh
mysql -u root -p
Kemudian kita perlu menambahkan pengguna untuk mengakses database
grant all privileges on *.* to root@"%" identified by ".";
Kode di atas, yang mungkin paling umum Anda temukan, akan mengarah ke ERROR 1064 [42000]. Karena MySQL 8. 0 belum mendukung metode ini lagi
Yang ingin saya lakukan adalah menghubungkan Tableau ke database yang telah saya simpan di sini di PythonAnywhere dan menggunakan kontennya untuk mengisi dasbor di akun Tableau saya
AFAIK PythonAnywhere hanya mengizinkan koneksi SSH saat database diakses dari jarak jauh. Tableau tidak menangani koneksi SSH dengan sangat baik, jadi untuk memasukkan database saya ke Tableau, saya harus membuka Terowongan SSH melalui Putty, lalu menghubungkan Tableau secara lokal melalui itu
Jadi, pada akhirnya, saya ingin masuk ke Tableau, dan memasukkan informasi saya di layar ini. https. //imgur. com/zS5Dvi2 dan lihat tabel database saya di sisi kiri panel koneksi sehingga saya bisa mengerjakannya
Namun, selama dua minggu terakhir ini terbukti menjadi masalah yang sulit diselesaikan. Saya telah bermain Q&A ping-pong di sini, Stack Overflow, forum dan codementor Tableau mencoba untuk mendapatkan resolusi, tetapi pada dasarnya saya terjebak dalam pengulangan pesan kesalahan dan orang-orang meminta saya untuk memeriksa dengan vendor lain di
Namun pada akhirnya, saya tidak dapat meningkatkan proses dasar ini
- Saya membuka Putty
- Saya memasukkan ssh. pythonanywhere. com sebagai Nama Host dengan Nomor Port 22 dan Tipe koneksi SSH
- Saya pergi ke Kategori --> SSH --> Terowongan
- di Tujuan saya menempatkan jonathan bechtel. mysql. pythonanywhere-services. com. 3306 dengan opsi 'Lokal' dan 'Otomatis' dicentang
- Saya menempatkan 3306 sebagai port sumber
- Saya menekan 'Buka' dan kemudian saya mengikuti petunjuk di Putty untuk masuk ke akun Python Anywhere saya
- Setelah itu saya membiarkan terminal Putty terbuka dan saya membuka Tableau
- Saya tiba di gambar yang saya tautkan sebelumnya
- Di layar Tableau yang saya tautkan. - di kolom 'Server' saya masukkan 127. 0. 0. 1 [atau localhost] - di kolom port saya masukkan 3306 - di kolom username saya masukkan username pythonanywhere saya - di kolom password saya masukkan password database saya
Melalui semua ini memberi saya pesan kesalahan berikut
[MySQL][ODBC 8. 0[w] Driver]Akses ditolak untuk pengguna 'jonathanbechtel'@'localhost' [menggunakan kata sandi. YA] Nama pengguna atau kata sandi salah
Saya telah memeriksa nama pengguna dan kata sandi saya dan semuanya berfungsi
Beberapa item lagi
- Saya memiliki notebook jupyter yang saya gunakan untuk terhubung ke database ini melalui Terowongan SSH dan berfungsi, menggunakan kata sandi dan nama pengguna yang sama yang saya gunakan di Tableau
- Firewall saya dimatikan
- Saya tidak memiliki database lokal yang berjalan di latar belakang saat saya melakukan ini
Pertanyaan yang saya ajukan di berbagai situs sekarang tersebar, tetapi itu karena saya telah mencoba mengajukan pertanyaan yang lebih komprehensif tentang Tableau di sini, di SO di sini, dan di forum ini di sini, tetapi tidak ada penyelesaian. Jadi saya mencoba menemukan sudut yang berbeda untuk digunakan terhadap masalah untuk melihat apa yang muncul, dan kemudian mengajukan pertanyaan berdasarkan itu dengan harapan mendapatkan jawaban dengan cara yang lebih hati-hati. Jadi secara kolektif aktivitas saya di berbagai situs tanya jawab mungkin terlihat tidak fokus, tetapi itu hanya karena pendekatan yang lebih jelas telah habis.