All Products
Search
Document Center

Database Autonomy Service:FAQ DBGateway

Last Updated:Jun 21, 2026

Topik ini menjelaskan struktur direktori DBGateway, operasi dasarnya, serta cara menangani masalah umum.

Struktur direktori DBGateway

dbgateway
|-- bin
|   |-- dbgateway
|   \-- dbgateway-manager
|-- conf
|   |-- dbgateway.conf
|   \-- server.crt
\-- log
    |-- dbgateway.err
    |-- dbgateway.log
    \-- dbgateway_manager.log    
Catatan
  • Direktori bin berisi dbgateway (program utama) dan dbgateway-manager (skrip manajemen untuk memelihara DBGateway).

  • Direktori conf berisi dbgateway.conf (file konfigurasi DBGateway) dan server.crt (sertifikat kunci publik untuk komunikasi).

  • Direktori log berisi dbgateway.err (output error DBGateway), dbgateway.log (log utama DBGateway), dan dbgateway_manager.log (log skrip manajemen).

Operasi dasar

  • Lihat log DBGateway

    • Jalur lengkap file log DBGateway adalah /opt/dbgateway/log/dbgateway.log.

    • File log merupakan file teks biasa yang dapat Anda lihat dengan alat standar seperti vim, tail, cat, dan less.

    Jika staf dukungan Database Autonomy Service (DAS) meminta log DBGateway untuk troubleshooting, login ke server tempat DBGateway diterapkan. Jalankan perintah berikut untuk mengambil 200 entri log terakhir dan berikan output-nya kepada mereka.

    tail -n 200 /opt/dbgateway/log/dbgateway.log
  • Periksa apakah proses DBGateway sedang berjalan

    1. Login ke Konsol DAS.

    2. Pada panel navigasi sebelah kiri, klik Resource Management > DBGateways.

    3. Pada halaman DBGateways, periksa Current Status DBGateway.

      Jika Current Status bernilai Normal, maka proses DBGateway sedang berjalan. Jika tidak, jalankan perintah berikut pada server tempat DBGateway diterapkan:

      /opt/dbgateway/bin/dbgateway-manager -d status
      • Jika proses DBGateway sedang berjalan, perintah akan mengembalikan:

        DBGateway is running.
      • Jika proses DBGateway tidak berjalan, perintah akan mengembalikan:

        DBGateway is dead.
      Catatan

      Pemeriksaan ini hanya memastikan bahwa proses DBGateway ada, bukan bahwa proses tersebut berfungsi dengan benar.

  • Restart DBGateway

    1. Periksa apakah proses DBGateway sedang berjalan seperti dijelaskan pada bagian sebelumnya.

    2. Restart DBGateway.

      • Jika proses DBGateway sedang berjalan:

        • Pada halaman DBGateways, temukan DBGateway yang dimaksud, lalu klik Management > Restart pada kolom Actions.

        • Atau, jalankan perintah berikut pada server tempat DBGateway diterapkan:

          /opt/dbgateway/bin/dbgateway-manager -d restart
      • Jika proses DBGateway tidak berjalan:

        Operasi ini tidak tersedia di Konsol DAS. Anda harus me-restart proses tersebut melalui command line. Jalankan perintah berikut pada server tempat DBGateway diterapkan:

        /opt/dbgateway/bin/dbgateway-manager -d restart
  • Upgrade DBGateway

    Pada halaman DBGateways, temukan DBGateway yang dimaksud, lalu klik Management > Upgrade pada kolom Actions.

  • Hentikan DBGateway

    • Pada halaman DBGateways, temukan DBGateway yang dimaksud, lalu klik Management > Stop pada kolom Actions.

    • Atau, jalankan perintah berikut pada server tempat DBGateway diterapkan:

       /opt/dbgateway/bin/dbgateway-manager -d stop
  • Hapus DBGateway

    Catatan
    • Setelah Anda menghapus DBGateway, semua fitur Database Autonomy Service (DAS) untuk instans database terkait tidak lagi tersedia.

    • Anda tidak dapat menghapus DBGateway yang status Current Status-nya adalah Normal. Anda harus menghentikan DBGateway terlebih dahulu.

    1. Pada halaman DBGateways, temukan DBGateway yang ingin dihapus, lalu klik Management > Delete pada kolom Actions.

    2. Opsional: Jalankan perintah berikut pada server tempat DBGateway diterapkan untuk menghapus direktori instalasi.

      rm -rf /opt/dbgateway
  • Instal ulang DBGateway

    Setelah menghapus DBGateway, Anda dapat menerapkannya kembali pada server yang sama menggunakan perintah penerapan yang disediakan di Konsol DAS saat menambahkan instans database.

Troubleshooting penerapan

Saat Anda menghubungkan instans database menggunakan database gateway in centralized mode atau database gateway in host mode, Anda akan menerima perintah penerapan. Perintah berikut merupakan contoh. Nilai id dan token hanya untuk demonstrasi. Gunakan nilai dari perintah penerapan Anda.

sudo wget -O install-dbgateway http://hdm-dbgateway-cn-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/DBGateway/install/install-dbgateway && sudo /bin/bash install-dbgateway --id xxx --token xxx --endpoint master-hdm-cn-hangzhou-inner.aliyuncs.com --region cn-hangzhou
  • Tidak dapat mengunduh skrip penerapan DBGateway

    • Jika Anda melihat pesan wget command not found, utilitas wget belum terinstal. Jalankan salah satu perintah berikut untuk menginstal wget:

      sudo apt-get install wget

      atau

      yum -y install wget
    • Periksa apakah server Anda dapat terhubung ke jaringan Object Storage Service (OSS).

      Pada server Anda, ping domain OSS. Pada contoh ini, domain-nya adalah hdm-dbgateway-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com. Gunakan domain dari perintah penerapan Anda.

      ping hdm-dbgateway-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com
      • Jika perintah mengembalikan pesan berikut, domain tidak dapat diselesaikan. Periksa pengaturan Server DNS Anda dan pastikan layanan DNS berfungsi dengan benar.

        ping: unknown host hdm-dbgateway-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com  
      • Jika perintah ping hang tanpa output, koneksi jaringan gagal. Periksa hal berikut:

        • Konfigurasi jaringan server.

        • Jenis akses jaringan server (Internet atau VPC).

        • Jika jenis akses jaringan adalah VPC, wilayah yang dipilih.

  • Uji konektivitas ke server DAS

    Jalankan perintah berikut pada server tempat Anda ingin menerapkan DBGateway. Pada contoh ini, domain server DAS adalah master-hdm-cn-hangzhou.aliyuncs.com. Gunakan domain dari perintah penerapan Anda.

    telnet master-hdm-cn-hangzhou.aliyuncs.com 80
    • Jika perintah mengembalikan Name or service not known, domain tidak dapat diselesaikan. Periksa pengaturan Server DNS Anda dan pastikan layanan DNS berfungsi dengan benar.

    • Jika perintah mengembalikan Trying diikuti alamat IP, seperti Trying 10.0.XX.XX, lalu hang, jaringan tidak dapat dijangkau. Periksa hal berikut:

      • Konfigurasi jaringan server.

      • Jenis akses jaringan server (Internet atau VPC).

      • Jika jenis akses jaringan adalah VPC, wilayah yang dipilih.

    • Jika perintah mengembalikan output berikut:

      Connected to master-hdm-cn-hangzhou.aliyuncs.com.  Escape character is '^]'.

      Koneksi ke server DAS berhasil. Jika DBGateway tetap gagal dimulai, rujuk bagian sebelumnya dan lihat log DBGateway untuk troubleshooting lebih lanjut.

Troubleshooting runtime

  • Otentikasi gagal atau izin tidak mencukupi

    • Pastikan akun yang diotorisasi memiliki izin yang diperlukan. Contoh berikut menggunakan akun yang diotorisasi bernama das_test.

      • MySQL

        CREATE USER 'das_test'@'%' IDENTIFIED BY 'password';
        GRANT SHOW DATABASES, PROCESS, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'das_test'@'%';
        GRANT SELECT ON *.*  TO 'das_test'@'%';
      • PostgreSQL

        CREATE USER das_test PASSWORD 'password';
        GRANT SELECT ON ALL TABLES IN SCHEMA PUBLIC TO das_test;
        /* Opsional. Izin ini diperlukan untuk mengumpulkan log kueri lambat dan pernyataan SQL. */ 
        ALTER USER das_test WITH SUPERUSER;
      • MongoDB

        use admin;
        db.createUser({user:'das_test',pwd:'password',roles:[{role:'readAnyDatabase', db:'admin'}, {role:'clusterMonitor', db:'admin'}, {role: 'hostManager', db: 'admin'}]})

        Jika Anda menerima error (Unauthorized) not authorized on admin to execute command, berikan izin berikut ke akun yang diotorisasi:

        db.grantRolesToUser("das_test", [{db: "local", role: "dbAdmin"},{db: "config", role: "dbAdmin"},{db: "admin", role: "dbAdminAnyDatabase"}])
      • Redis

        Redis tidak memiliki sistem akun. Pastikan password-nya benar. Untuk mengubah password Redis, modifikasi opsi requirepass pada file konfigurasinya dan restart layanan Redis. Untuk informasi lebih lanjut, lihat Redis configuration.

    • Pastikan akun dan password-nya benar. Kami menyarankan Anda menguji kredensial dengan menghubungkan ke instans database secara remote dari server DBGateway.

    • Restart DBGateway dan periksa apakah instans berhasil diotorisasi.

    • Upgrade DBGateway ke versi terbaru.

  • Kegagalan koneksi

    Kegagalan koneksi terjadi ketika DBGateway tidak dapat terhubung ke instans database. Periksa kemungkinan penyebab berikut:

    • Periksa apakah instans database berjalan dengan baik.

      Jika instans database seperti MySQL, PostgreSQL, MongoDB, atau Redis tidak berjalan, periksa apakah prosesnya ada.

    • Periksa konektivitas jaringan antara server DBGateway dan instans database (misalnya, MySQL, PostgreSQL, MongoDB, atau Redis). Jalankan perintah berikut untuk memastikan:

      telnet <database_instance_IP_or_domain> <database_instance_port>  

      Contoh:

      telnet 192.168.XX.XX 3306
      • Jika perintah mengembalikan pesan berikut, koneksi jaringan normal. Lihat log DBGateway untuk investigasi lebih lanjut.

        Connected to 192.168.XX.XX
        Escape character is '^]'.
      • Jika pesan di atas tidak dikembalikan, terdapat masalah konektivitas jaringan. Masalah ini sering disebabkan oleh isolasi jaringan antar server, pengaturan routing, firewall, atau instans database yang dikonfigurasi untuk menolak koneksi remote.

  • Masalah pemantauan

    • Periksa status berjalan DBGateway.

    • Restart DBGateway dan periksa apakah pemantauan dilanjutkan.

    • Upgrade DBGateway ke versi terbaru.

  • Status terjebak di Authorized. Verifying

    Setelah otorisasi berhasil, status instans seharusnya berubah menjadi Normal Connection dalam waktu satu hingga dua menit. Jika status tetap Authorized. Verifying lebih dari dua menit, lakukan langkah-langkah berikut:

    • Periksa status berjalan DBGateway.

    • Restart DBGateway dan periksa apakah instans berhasil diotorisasi.

    • Upgrade DBGateway ke versi terbaru.