全部产品
Search
文档中心

ApsaraDB RDS:Menggunakan aplikasi untuk terhubung ke instance ApsaraDB RDS for MySQL

更新时间:Jun 25, 2025

Topik ini menjelaskan cara terhubung ke instance ApsaraDB RDS for MySQL menggunakan aplikasi Java, Python, atau C.

Parameter

Tabel berikut menjelaskan parameter dalam kode contoh.

Parameter

Deskripsi

Host

Titik akhir internal atau publik dari instance RDS.

  • Jika klien Anda ditempatkan pada instance Elastic Compute Service (ECS) yang berada di wilayah yang sama dan memiliki tipe jaringan yang sama dengan instance RDS, gunakan titik akhir internal. Sebagai contoh, jika instance ECS dan instance RDS keduanya berada dalam virtual private cloud (VPC) yang terletak di wilayah China (Hangzhou), Anda dapat menggunakan titik akhir internal dari instance RDS untuk membuat koneksi yang aman.

  • Dalam skenario lainnya, gunakan titik akhir publik.

Untuk informasi lebih lanjut tentang cara melihat titik akhir internal dan publik serta port dari instance RDS, lihat Lihat dan ubah titik akhir internal dan publik serta nomor port dari instance ApsaraDB RDS for MySQL.

Port

Jika Anda terhubung ke instance RDS melalui jaringan internal, masukkan nomor port internal dari instance tersebut. Jika Anda terhubung ke instance RDS melalui Internet, masukkan nomor port publik dari instance tersebut.

myDatabase

Nama database.

myUsername

Nama pengguna akun yang digunakan untuk terhubung ke instance RDS.

myPassword

Kata sandi akun.

Kode contoh

Catatan

Kode contoh berikut digunakan untuk menanyai tabel courses dalam database. Anda harus menyesuaikan kode sesuai dengan kebutuhan bisnis Anda.

Kode contoh dalam Java

Catatan

Dalam contoh ini, proyek Maven digunakan. Tambahkan dependensi DriverManager dalam file pom.xml.

<dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <version>8.0.27</version>
</dependency>
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class DatabaseConnection
{
    public static void main(String args[]) {
        String connectionUrl= "jdbc:mysql://<Host>:<Port>/<myDatabase>";    

        ResultSet resultSet;

        try (Connection connection=DriverManager.getConnection(connectionUrl,"<myUsername>","<myPassword>");  
             Statement statement = connection.createStatement()) {

            String selectSql = "SELECT * FROM `courses`";            //Masukkan Pernyataan SQL yang ingin Anda eksekusi.
            resultSet = statement.executeQuery(selectSql);

            while (resultSet.next()) {
                System.out.println(resultSet.getString("name"));
            }
        }
        catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

Kode contoh dalam Python 3

Catatan

Instal PyMySQL terlebih dahulu.

  • Jika menggunakan Python 3, jalankan perintah pip3 install PyMySQL.

  • Jika menggunakan Python 2, jalankan perintah pip install pymysql==0.9.3.

import pymysql

connection = pymysql.connect(host='<Host>',     
                       port=<Port>,
                       user='<myUsername>',
                       passwd='<myPassword>',
                       db='<myDatabase>')

try:
    with connection.cursor() as cursor:
        sql = "SELECT * FROM `courses`"
        cursor.execute(sql)
        for result in cursor:
             print(result)
finally:
    connection.close()

Kode contoh dalam C

Catatan

Instal file header mysql.h. Dalam contoh ini, CentOS digunakan.

sudo yum install mysql-devel
#include <stdio.h>
#include <mysql.h>
#include <string.h>

int main(void)
{
    MYSQL *t_mysql;

    MYSQL_RES       *res = NULL;
    MYSQL_ROW       row;
    char            *query_str = NULL;
    int             rc, i, fields;
    int             rows;

    char select[] = "select * from courses";    // Masukkan Pernyataan SQL yang ingin Anda eksekusi.
    t_mysql = mysql_init(NULL);

    if(NULL == t_mysql){
        printf("init failed\n");
    }

    if(NULL == mysql_real_connect(t_mysql, "<Host>", "<myUsername>", "<myPassword>", "<myDatabase>",
            <Port>, NULL, 0)){
        printf("connect failed\n");
    }

    if(mysql_real_query(t_mysql, select, strlen(select)) != 0){
        printf("select failed\n");
    }

    res = mysql_store_result(t_mysql);
    if (NULL == res) {
         printf("mysql_restore_result(): %s\n", mysql_error(t_mysql));
         return 0;
    }

    fields = mysql_num_fields(res);
    while ((row = mysql_fetch_row(res))) {
        for (i = 0; i < fields; i++) {
            printf("%s\t", row[i]);
        }
        printf("\n");
    }
    mysql_close(t_mysql);

}
                    

Pemecahan Masalah

Jika koneksi gagal, kami sarankan melakukan pemecahan masalah berdasarkan informasi kesalahan yang diterima. Untuk informasi lebih lanjut, lihat Selesaikan masalah bahwa Anda tidak dapat terhubung ke instance RDS.

Referensi