Tidak dapat terhubung ke server mysql di ec2?

Yah, memecahkan masalah konektivitas agak sulit di forum ini karena mungkin memerlukan penyelaman mendalam di internal (grup keamanan, NACL, detail vpc, dll. ) - Menambah jawaban yang sudah diposting - Saya ingin membagikan tautan ini yang dapat membantu Anda memecahkan masalah

https. //Youtube. be/3XvD9NqP-uA

[] Menghubungkan ke instans DB yang menjalankan mesin database MySQL - https. //dokumen. aws. amazon. com/AmazonRDS/latest/UserGuide/USER_ConnectToInstance. html

Jika tidak berfungsi, saya akan merekomendasikan untuk menghubungi AWS Premium Support untuk sesi pemecahan masalah mendalam. Selamat beristirahat hari ini

Seringkali ketika klien MySQL mencoba untuk terhubung ke server MySQL melalui cloud AWS, server mysql mengirimkan kembali kesalahan tersebut

Di sini, di Bobcares, kami sering menangani permintaan dari pelanggan kami untuk memperbaiki kesalahan serupa sebagai bagian dari Layanan Manajemen Server kami. Hari ini kita akan melihat bagaimana teknisi dukungan kami memperbaikinya untuk pelanggan kami

Cara memperbaiki AWS ERROR 2003 (HY000) Tidak dapat terhubung ke server MySQL

Sebelum masuk ke langkah-langkah untuk memperbaiki kesalahan ini, kita akan melihat apa yang menyebabkan kesalahan ini

Kesalahan tipikal mungkin terlihat seperti yang diberikan di bawah ini

RDS. KESALAHAN 2003 (HY000). Tidak dapat terhubung ke server MySQL (10060)

Penyebab

Kesalahan ini menyatakan bahwa lalu lintas masuk/keluar dari instance AWS tidak dapat dijangkau oleh host saat ini tempat klien MySQL berjalan. Jadi, pertama-tama, pengguna perlu mendaftarkan alamat IP publik di grup keamanan RDS untuk mendapatkan akses melalui instans MySQL RDS

Langkah-langkah untuk memperbaiki kesalahan ini

Mengonfigurasi alamat IP publik di grup keamanan akan memperbaiki “RDS. KESALAHAN 2003 (HY000). Tidak dapat terhubung ke server MySQL (10060)”

Berikut adalah langkah-langkah untuk mengonfigurasi alamat IP publik di grup keamanan

1. Pertama, kita harus menemukan alamat IP publik untuk mesin host tempat kita menjalankan klien mysql

2. Lalu pergi ke grup keamanan dan tambahkan alamat IP publik untuk lalu lintas masuk

3. Setelah itu kami akan menambahkan entri yang sama untuk lalu lintas keluar yang didistribusikan oleh layanan AWS

4. Setelah kami menyelesaikan entri di atas, kami dapat menyegarkan grup keamanan dan menguji koneksi dari klien mysql mana pun

Sebagai contoh, kita dapat menguji koneksi hanya dengan mengetikkan perintah di bawah ini dari terminal manapun di mana MySQL dikonfigurasi

 mysql -h host-public-ip/DNS -P 3306 -u username -p password

[Butuh bantuan?

Kesimpulan

Singkatnya, kami melihat bagaimana Teknisi Dukungan kami memperbaiki AWS “ERROR 2003 (HY000). Tidak dapat terhubung ke server MySQL” untuk pelanggan kami

MENCEGAH SERVER ANDA DARI CRASHING

Tidak pernah lagi kehilangan pelanggan karena kecepatan server yang buruk. Biarkan kami membantu Anda

Pakar server kami akan memantau & memelihara server Anda 24/7 agar tetap cepat dan aman

Sebelum Anda dapat terhubung ke instans DB yang menjalankan mesin database MySQL, Anda harus membuat instans DB. Untuk informasi, lihat Membuat instans DB Amazon RDS. Setelah Amazon RDS menyediakan instans DB Anda, Anda dapat menggunakan aplikasi atau utilitas klien MySQL standar apa pun untuk terhubung ke instans. Dalam string koneksi, Anda menentukan alamat DNS dari titik akhir instans DB sebagai parameter host, dan menentukan nomor port dari titik akhir instans DB sebagai parameter port

Untuk mengautentikasi ke instans DB RDS, Anda dapat menggunakan salah satu metode autentikasi untuk autentikasi database MySQL dan AWS Identity and Access Management (IAM)

Anda dapat terhubung ke instans DB MySQL dengan menggunakan alat seperti klien baris perintah MySQL. Untuk informasi lebih lanjut tentang penggunaan klien baris perintah MySQL, lihat mysql - klien baris perintah MySQL dalam dokumentasi MySQL. Salah satu aplikasi berbasis GUI yang bisa Anda gunakan untuk terhubung adalah MySQL Workbench. Untuk informasi lebih lanjut, lihat halaman Download MySQL Workbench. Untuk informasi tentang penginstalan MySQL (termasuk klien baris perintah MySQL), lihat Menginstal dan memutakhirkan MySQL

Sebagian besar distribusi Linux menyertakan klien MariaDB, bukan klien Oracle MySQL. Untuk menginstal klien baris perintah MySQL di sebagian besar distribusi Linux berbasis RPM, termasuk Amazon Linux 2, jalankan perintah berikut

yum install mariadb
_

Untuk menginstal klien baris perintah MySQL di sebagian besar distribusi Linux berbasis DEB, jalankan perintah berikut

apt-get install mariadb-client

Untuk memeriksa versi klien baris perintah MySQL Anda, jalankan perintah berikut

mysql --version

Untuk membaca dokumentasi MySQL untuk versi klien Anda saat ini, jalankan perintah berikut

man mysql
_

Untuk terhubung ke instans DB dari luar Amazon VPC-nya, instans DB harus dapat diakses secara publik, akses harus diberikan menggunakan aturan masuk dari grup keamanan instans DB, dan persyaratan lainnya harus dipenuhi. Untuk informasi lebih lanjut, lihat

Anda dapat menggunakan enkripsi Secure Sockets Layer (SSL) atau Transport Layer Security (TLS) pada koneksi ke instans MySQL DB. Untuk informasi, lihat. Jika Anda menggunakan autentikasi database AWS Identity and Access Management (IAM), pastikan untuk menggunakan koneksi SSL/TLS. Untuk informasi, lihat autentikasi database IAM untuk MariaDB, MySQL, dan PostgreSQL

Anda juga dapat terhubung ke instans DB dari server web. Untuk informasi lebih lanjut, lihat Tutorial. Buat server web dan instans DB Amazon RDS

Menemukan informasi koneksi untuk instance MySQL DB

Informasi koneksi untuk instans DB mencakup titik akhir, port, dan pengguna database yang valid, seperti pengguna master. Misalnya, nilai titik akhir adalah mydb.123456789012.us-east-1.rds.amazonaws.com. Dalam hal ini, nilai port adalah

apt-get install mariadb-client
_0, dan pengguna database adalah
apt-get install mariadb-client
1. Dengan adanya informasi ini, Anda menentukan nilai berikut dalam string koneksi

  • Untuk host atau nama host atau nama DNS, tentukan mydb.123456789012.us-east-1.rds.amazonaws.com

  • Untuk port, tentukan

    apt-get install mariadb-client
    0

  • Untuk pengguna, tentukan

    apt-get install mariadb-client
    1

Untuk terhubung ke instans DB, gunakan klien apa pun untuk mesin MySQL DB. Misalnya, Anda mungkin menggunakan klien baris perintah MySQL atau MySQL Workbench

Untuk menemukan informasi koneksi untuk instans DB, Anda dapat menggunakan AWS Management Console, perintah explain-db-instances AWS CLI, atau operasi ExplainDBInstances Amazon RDS API untuk mencantumkan detailnya

Untuk menemukan informasi koneksi untuk instans DB di AWS Management Console

  1. Masuk ke AWS Management Console dan buka konsol Amazon RDS di https. //menghibur. aws. amazon. com/rds/

  2. Di panel navigasi, pilih Database untuk menampilkan daftar instans DB Anda

  3. Pilih nama instans MySQL DB untuk menampilkan detailnya

  4. Pada tab Konektivitas & keamanan, salin titik akhir. Perhatikan juga nomor port. Anda memerlukan titik akhir dan nomor port untuk terhubung ke instans DB

    Tidak dapat terhubung ke server mysql di ec2?

  5. Jika Anda perlu menemukan nama pengguna master, pilih tab Konfigurasi dan lihat nilai nama pengguna Master

Untuk menemukan informasi koneksi untuk instans DB MySQL dengan menggunakan AWS CLI, panggil perintah explain-db-instances. Dalam panggilan, kueri ID instans DB, titik akhir, port, dan nama pengguna utama

Untuk Linux, macOS, atau Unix

aws rds describe-db-instances \
  --filters "Name=engine,Values=mysql" \
  --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"
_

Untuk Windows

aws rds describe-db-instances ^
  --filters "Name=engine,Values=mysql" ^
  --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"

Output Anda harus serupa dengan yang berikut ini

[
    [
        "mydb1",
        "mydb1.123456789012.us-east-1.rds.amazonaws.com",
        3306,
        "admin"
    ],
    [
        "mydb2",
        "mydb2.123456789012.us-east-1.rds.amazonaws.com",
        3306,
        "admin"
    ]
]

Untuk menemukan informasi koneksi untuk instans DB menggunakan Amazon RDS API, panggil operasi ExplainDBInstances. Di output, temukan nilai untuk alamat titik akhir, port titik akhir, dan nama pengguna utama

Menghubungkan dari klien baris perintah MySQL (tidak terenkripsi)

Hanya gunakan koneksi MySQL yang tidak terenkripsi ketika klien dan server berada di VPC yang sama dan jaringan dipercaya. Untuk informasi tentang penggunaan koneksi terenkripsi, lihat

Untuk terhubung ke instans DB menggunakan klien baris perintah MySQL, masukkan perintah berikut pada prompt perintah. Untuk parameter -h, gantikan nama DNS (titik akhir) untuk instans DB Anda. Untuk parameter -P, gantikan port dengan instans DB Anda. Untuk parameter -u, gantikan nama pengguna dari pengguna basis data yang valid, seperti pengguna master. Masukkan kata sandi pengguna utama saat diminta

mysql -h mysql–instance1.123456789012.us-east-1.rds.amazonaws.com -P 3306 -u mymasteruser -p

Setelah Anda memasukkan kata sandi untuk pengguna, Anda akan melihat keluaran yang mirip dengan berikut ini

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9738
Server version: 8.0.23 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

Menghubungkan dari MySQL Workbench

Untuk terhubung dari MySQL Workbench

  1. Unduh dan instal MySQL Workbench di Download MySQL Workbench

  2. Buka Meja Kerja MySQL

    Tidak dapat terhubung ke server mysql di ec2?

  3. Dari Database, pilih Kelola Koneksi

  4. Di jendela Kelola Koneksi Server, pilih Baru

  5. Di jendela Connect to Database, masukkan informasi berikut

    • Koneksi Tersimpan – Masukkan nama untuk koneksi, seperti

      apt-get install mariadb-client
      5

    • Hostname – Masukkan titik akhir instans DB

    • Port – Masukkan port yang digunakan oleh instans DB

    • Nama pengguna – Masukkan nama pengguna dari pengguna basis data yang valid, seperti pengguna master

    • Kata Sandi – Secara opsional, pilih Simpan di Vault lalu masukkan dan simpan kata sandi untuk pengguna

    Jendela terlihat mirip dengan yang berikut ini

    Tidak dapat terhubung ke server mysql di ec2?

    Anda dapat menggunakan fitur MySQL Workbench untuk menyesuaikan koneksi. Misalnya, Anda dapat menggunakan tab SSL untuk mengonfigurasi koneksi SSL/TLS. Untuk informasi tentang penggunaan MySQL Workbench, lihat dokumentasi MySQL Workbench. Mengenkripsi koneksi klien ke instans MySQL DB dengan SSL/TLS, lihat Mengenkripsi koneksi klien ke instans MySQL DB dengan SSL/TLS

  6. Secara opsional, pilih Test Connection untuk mengonfirmasi bahwa koneksi ke instans DB berhasil

  7. Pilih Tutup

  8. Dari Database, pilih Hubungkan ke Database

  9. Dari Koneksi Tersimpan, pilih koneksi Anda

  10. Pilih Oke

Menghubungkan dengan Driver JDBC Layanan Web Amazon untuk MySQL

Driver AWS JDBC untuk MySQL adalah driver klien yang dirancang untuk RDS untuk MySQL. Secara default, driver memiliki pengaturan yang dioptimalkan untuk digunakan dengan RDS untuk MySQL. Untuk informasi selengkapnya tentang driver dan petunjuk lengkap untuk menggunakannya, lihat AWS JDBC Driver untuk repositori MySQL GitHub

Driver ini kompatibel dengan driver MySQL Connector/J. Untuk memasang atau memutakhirkan konektor Anda, ganti konektor MySQL. file jar (terletak di aplikasi CLASSPATH) dengan AWS JDBC Driver for MySQL. jar, dan perbarui awalan URL koneksi dari

apt-get install mariadb-client
6 ke
apt-get install mariadb-client
7

Driver AWS JDBC untuk MySQL mendukung autentikasi database IAM. Untuk informasi selengkapnya, lihat di AWS JDBC Driver untuk repositori MySQL GitHub. Untuk informasi selengkapnya tentang autentikasi database IAM, lihat autentikasi database IAM untuk MariaDB, MySQL, dan PostgreSQL

Memecahkan masalah koneksi ke instans DB MySQL Anda

Dua penyebab umum kegagalan koneksi ke instans DB baru adalah

  • Instans DB dibuat menggunakan port default 3306, dan perusahaan Anda memiliki aturan firewall yang memblokir koneksi ke port tersebut dari perangkat di jaringan perusahaan Anda. Untuk memperbaiki kegagalan ini, buat ulang instance dengan port yang berbeda

    Bagaimana cara terhubung ke MySQL dari EC2?

    Resolusi .
    Buka Meja Kerja MySQL
    Pilih Koneksi Baru MySQL dan masukkan nama koneksi
    Pilih Metode Koneksi, dan pilih TCP/IP Standar melalui SSH
    Untuk SSH Hostname, masukkan alamat IP publik instans EC2 Anda
    Untuk Nama Pengguna SSH, masukkan nama pengguna SSH default untuk terhubung ke instans EC2 Anda

    Mengapa MySQL tidak terhubung ke server?

    biasanya berarti tidak ada server MySQL yang berjalan di sistem atau Anda menggunakan nama file soket Unix atau nomor port TCP/IP yang salah when trying to connect to the server. You should also check that the TCP/IP port you are using has not been blocked by a firewall or port blocking service.

    Mengapa saya tidak dapat terhubung ke instans EC2 saya?

    Berikut adalah alasan umum mengapa EC2 Instance Connect mungkin tidak berfungsi seperti yang diharapkan. EC2 Instance Connect tidak mendukung distribusi OS . Paket Instance Connect EC2 tidak diinstal pada instans. Ada kebijakan atau izin AWS Identity and Access Management (IAM) yang hilang atau salah.

    Mengapa saya tidak dapat terhubung ke instans RDS saya?

    Berikut adalah beberapa alasan yang lebih umum. Instans DB RDS dalam keadaan selain tersedia, sehingga tidak dapat menerima koneksi . Sumber Anda untuk terhubung ke instans DB tidak memiliki akses otorisasi di grup keamanan, daftar kontrol akses jaringan (ACL), atau firewall lokal Anda.