All Products
Search
Document Center

Data Management:Ubah data tanpa mengunci tabel

Last Updated:Sep 02, 2026

Saat menjalankan pernyataan UPDATE atau DELETE pada tabel besar, transaksi standar akan mengunci tabel hingga operasi selesai—memblokir operasi baca dan tulis serta berisiko menyebabkan timeout yang mengganggu lalu lintas produksi. Fitur ubah data tanpa kunci (lock-free data change) menghindari masalah ini dengan membagi baris yang terpengaruh menjadi batch kecil dan memproses setiap batch sebagai transaksi terpisah berdurasi singkat. Setiap batch langsung dikomit dan melepaskan kuncinya, sehingga tabel tetap responsif selama proses berlangsung.

Peringatan

  • Fitur ubah data tanpa kunci hanya mendukung operasi SQL single-table dan sederhana (seperti SELECT, UPDATE, dan DELETE). Operasi multi-tabel (seperti pernyataan DELETE yang mengandung JOIN) tidak didukung.

Prosedur

Contoh ini menggunakan fitur lock-free data change untuk mengubah data pada kolom big_table dari tabel long_text_b secara bertahap menjadi random long text.

  1. Pengguna biasa mengajukan tiket.

    1. Login ke Data Management DMS 5.0.

    2. Pada bilah navigasi atas, pilih Database Development > Data Change > Lockless change.

      Catatan

      Jika Anda menggunakan Konsol DMS dalam mode simple, arahkan pointer ke ikon 2023-01-28_15-57-17.png di pojok kiri atas konsol, lalu pilih All Features > Database Development > Data Change > Lockless Change.

    3. Konfigurasikan informasi yang diperlukan, lalu klik Submit.

      Tabel berikut menjelaskan beberapa parameter.

      Parameter Wajib Deskripsi
      Database Ya Pilih poc_dev
      Business Background Tidak Jelaskan kebutuhan bisnis Anda untuk mengurangi komunikasi bolak-balik dengan pihak yang menyetujui.
      Affected Rows Ya Perkirakan jumlah baris yang akan terpengaruh oleh perubahan ini. Jalankan kueri COUNT
      SQL Statements for Change Ya Masukkan pernyataan UPDATE atau DELETE yang akan dieksekusi.
    4. Pada halaman Ticket Details, klik tombol Batch Execution Configuration, atur parameter berikut, lalu klik Submit Change.

      Batch execution configuration

    5. Konfirmasi detail tiket.

      Catatan

      Anda dapat melihat halaman Ticket Details untuk memeriksa detail tiket. Sistem juga melakukan Pemeriksaan Awal terhadap pernyataan SQL yang akan dieksekusi, termasuk penguraian sintaks SQL, verifikasi jenis SQL berdasarkan aturan keamanan, verifikasi izin pengusul tiket, dan perkiraan jumlah baris yang dipindai.

    6. Setelah memastikan informasi benar dan Pemeriksaan Awal berhasil, klik Submit for Approval, lalu klik Confirm.

      Penting

      Sebelum mengajukan untuk persetujuan, Anda dapat mengubah konten tiket dan konfigurasi jadwal. Setelah tiket diajukan untuk persetujuan, informasi tidak dapat diubah lagi.

  1. Administrator menyetujui dan mengeksekusi tiket.

    1. Login ke Data Management DMS 5.0.

    2. Di halaman utama Konsol DMS, pada bagian My Tickets, klik Pending Tickets.

    3. Di halaman My Tickets, klik ticket number yang dimaksud.

    4. Di halaman Ticket Details, konfirmasi informasi perubahan tiket, lalu klik Approve.

    5. Masukkan komentar Anda di kotak teks komentar persetujuan, lalu klik OK.

    6. Klik Execute Change, pilih waktu eksekusi, lalu klik OK.

    7. Klik Confirm Execution, sistem akan secara otomatis memulai eksekusi.

      Catatan
      • Secara default, eksekusi dilakukan segera. Anda juga dapat memilih waktu mulai eksekusi.

      • Jika Anda menentukan waktu akhir, sistem tidak akan lagi mengeksekusi pernyataan SQL yang belum selesai setelah waktu tersebut tiba. Fitur ini terutama digunakan untuk mencegah dampak terhadap bisnis selama jam sibuk.

    8. Di bagian Execution, klik Details, lalu klik Execution Progress untuk melihat progres eksekusi tugas.

  2. Administrator memverifikasi tugas.

    1. Login ke .

    2. Di daftar instans, buka instans POC_dev, lalu klik ganda database poc_dev untuk membuka SQL Console.

    3. Di jendela SQL Console, masukkan pernyataan kueri berikut, lalu klik Execute. Anda dapat melihat bahwa data pada kolom long_text_b telah diperbarui.

      SELECT * FROM `big_table`;

      Lock-free data change verification