全部产品
Search
文档中心

Data Management:Modifikasi Data Normal

更新时间:Jul 02, 2025

Fitur Modifikasi Data Normal dari Data Management (DMS) memungkinkan Anda untuk langsung atau secara berkala mengeksekusi pernyataan SQL seperti INSERT, UPDATE, DELETE, dan TRUNCATE guna mengubah data dalam database. Topik ini menjelaskan cara mengajukan tiket Modifikasi Data Normal.

Ikhtisar Operasi

  1. Konfigurasikan dan kirimkan tiket Modifikasi Data Normal.

    Pilih database atau instance yang ingin dikelola. Kemudian, masukkan pernyataan SQL untuk perubahan data atau unggah file berisi pernyataan SQL tersebut.

  2. Jalankan pra-pemeriksaan.

    DMS akan memeriksa apakah pernyataan SQL yang diajukan sesuai dengan tipe yang didukung oleh fitur Modifikasi Data Normal serta apakah Anda memiliki izin yang diperlukan untuk mengeksekusi pernyataan tersebut.

  3. Tinjau dan setujui tiket.

    DMS akan memverifikasi apakah pernyataan SQL yang ingin dieksekusi memengaruhi kinerja database dan apakah Anda memiliki izin yang diperlukan untuk melaksanakan pernyataan tersebut.

  4. Mengubah data.

    Eksekusi pernyataan SQL yang diajukan untuk perubahan data. Jika terjadi kesalahan selama proses perubahan data atau jika bisnis Anda memerlukan pengembalian perubahan data yang dibuat oleh pernyataan SQL, DMS menyediakan opsi untuk membuat tiket rollback guna mengembalikan data asli setelah perubahan selesai.

Prasyarat

Instance database yang digunakan harus dikelola dalam mode Perubahan Stabil atau Kolaborasi Keamanan di DMS. Untuk informasi lebih lanjut, lihat Mode kontrol.

Catatan Penggunaan

  • Setelah mengajukan tiket perubahan data untuk persetujuan, Anda dapat menutup tiket tanpa memedulikan status persetujuannya. Ini mencegah eksekusi tugas terkait tiket setelah persetujuan diberikan.

  • Disarankan untuk mengajukan tiket perubahan data di lingkungan pengujian. Hal ini memastikan bahwa sistem memeriksa jumlah baris yang terpengaruh dan menghasilkan file cadangan untuk setiap perubahan data, sehingga memungkinkan pemulihan data jika hasilnya tidak sesuai harapan.

    Catatan

    Untuk memastikan efisiensi R&D yang tinggi, Anda dapat menentukan bahwa persetujuan tidak diperlukan untuk tiket perubahan data di lingkungan pengujian. Untuk informasi lebih lanjut, lihat Koreksi SQL.

  • Jika Anda telah mengonfigurasi database logis, tabel logis, dan algoritma routing di DMS, Anda hanya perlu mengajukan satu tiket untuk melakukan sharding database dan tabel. Dengan cara ini, Anda tidak perlu mengajukan tiket untuk setiap database fisik atau tabel.

    • Jika algoritma routing dikonfigurasi dan bidang routing termasuk dalam pernyataan SQL yang digunakan untuk sharding database dan tabel, algoritma routing akan merutekan pernyataan ke tabel fisik yang sesuai untuk dieksekusi.

    • Jika algoritma routing tidak dikonfigurasi, tidak ada bidang routing yang termasuk dalam pernyataan SQL, atau tipe data dari bidang routing tidak cocok dengan tipe data yang ditentukan dalam algoritma routing, pernyataan SQL akan dieksekusi secara berurutan pada setiap tabel di setiap database. Proses ini membutuhkan waktu lebih lama untuk diselesaikan.

  • DMS secara otomatis menghasilkan lampiran skrip cadangan sebelum pernyataan UPDATE atau DELETE dieksekusi.

Prosedur

Langkah 1: Konfigurasikan dan kirimkan tiket

  1. Masuk ke Konsol DMS V5.0.
  2. Geser penunjuk mouse ke ikon 2023-01-28_15-57-17.png di sudut kiri atas Konsol DMS dan pilih All Features > Database Development > Data Change > Normal Data Modify.

    Catatan

    Jika Anda menggunakan Konsol DMS dalam mode normal, pilih Database Development > Data Change > Normal Data Modify di bilah navigasi atas.

  3. Di langkah Apply wizard Tiket Perubahan Data, konfigurasikan parameter untuk mengirimkan tiket perubahan data. Tabel berikut menjelaskan beberapa parameter.

    Catatan
    • Dalam contoh ini, instance yang dikelola dalam mode Kolaborasi Keamanan digunakan. Jika instance dikelola dalam mode Perubahan Stabil, parameter yang dapat dikonfigurasikan mungkin sedikit berbeda.

    • Fitur perubahan instance sumber data berada dalam rilis canary.

    Parameter

    Wajib

    Deskripsi

    Change Target

    Ya

    Nilai valid adalah Database dan Data Source Instance.

    Catatan

    Fitur perubahan instance sumber data hanya didukung oleh instance ApsaraDB RDS for MySQL, kluster PolarDB for MySQL, dan kluster AnalyticDB for MySQL.

    Database atau Instances

    Ya

    Database atau instance untuk mana Anda ingin mengajukan tiket. Anda harus memilih database atau instance di mana Anda memiliki izin untuk melakukan perubahan.

    Catatan

    Anda hanya dapat memilih satu instance sumber data tunggal.

    Reason Category

    Ya

    Alasan untuk perubahan data. Ini membantu Anda menemukan tiket dalam operasi selanjutnya.

    Catatan

    Jika Anda adalah administrator DMS, Anda dapat memodifikasi kategori alasan di halaman Configuration Management modul O&M. Untuk informasi lebih lanjut, lihat Manajemen konfigurasi.

    Business Background

    Ya

    Tujuan atau objektif dari perubahan data. Untuk mempercepat proses persetujuan, masukkan deskripsi rinci.

    Execution Method

    Ya

    Metode eksekusi tiket. Nilai valid:

    • Pengirim Tiket Menjalankan Setelah Disetujui

    • Otomatis Jalankan Setelah Disetujui

    • Pemberi Persetujuan Terakhir Menjalankan

    Catatan

    Jika Anda adalah administrator DMS, Anda dapat memodifikasi metode eksekusi di halaman Configuration Management modul O&M. Untuk informasi lebih lanjut, lihat Manajemen konfigurasi.

    Affected Rows

    Ya

    Estimasi jumlah baris data yang mungkin terpengaruh oleh perubahan data.

    SQL Statements for Change

    Ya

    Pernyataan SQL yang digunakan untuk perubahan data. Anda dapat memilih Text atau Attachment.

    SQL Text

    Ya

    Parameter ini tersedia hanya jika Anda mengatur parameter SQL Statements for Change ke Text. Masukkan pernyataan SQL yang dapat dieksekusi di bidang Teks SQL.

    Catatan
    • Pisahkan beberapa pernyataan SQL dengan titik koma (;).

    • Jika Anda mengatur parameter Target Perubahan ke Instance Sumber Data, Anda harus menambahkan nama database dalam format ${dbName}.${tableName} sebelum semua nama tabel dalam pernyataan SQL.

    • DMS memeriksa apakah sintaks pernyataan SQL valid saat Anda mengirimkan tiket. Jika sintaks tidak valid, Anda tidak dapat mengirimkan tiket.

    Attachment

    Ya

    Parameter ini tersedia hanya jika Anda mengatur parameter SQL Statements for Change ke Attachment. Unggah file yang menyimpan pernyataan SQL yang digunakan untuk perubahan data.

    Catatan

    File yang ingin Anda unggah dapat berupa file TXT, ZIP, atau SQL. Ukuran file tidak boleh melebihi 15 MB.

    SQL Statements for Rollback

    Tidak

    Pernyataan SQL yang digunakan untuk rollback. Anda dapat memilih Text atau Attachment.

    Catatan

    DMS secara otomatis mengisi pernyataan untuk rollback saat membuat tiket rollback hanya jika Anda telah memasukkan pernyataan SQL untuk rollback atau mengunggah file SQL untuk rollback. Jika tidak, Anda harus memasukkan pernyataan SQL secara manual.

    SQL Text

    Tidak

    Parameter ini tersedia hanya jika Anda mengatur parameter SQL Statements for Rollback ke Text. Masukkan pernyataan SQL untuk rollback. Pernyataan SQL yang Anda tentukan untuk parameter ini digunakan untuk rollback perubahan data.

    Attachment

    Tidak

    Parameter ini tersedia hanya jika Anda mengatur parameter SQL Statements for Rollback ke Attachment. Klik File untuk mengunggah file yang berisi pernyataan SQL yang ingin Anda gunakan untuk rollback.

    Catatan

    File yang ingin Anda unggah dapat berupa file TXT, ZIP, atau SQL. Ukuran file tidak boleh melebihi 15 MB.

    Change Stakeholder

    Tidak

    Pemangku kepentingan yang terlibat dalam perubahan data. Semua pemangku kepentingan yang ditentukan dapat melihat detail tiket dan berpartisipasi dalam proses persetujuan. Pengguna yang tidak relevan, kecuali administrator DMS dan administrator basis data (DBA), tidak memiliki akses ke detail tiket.

    Attachments

    Tidak

    File yang digunakan sebagai lampiran tiket untuk memberikan informasi tambahan tentang perubahan data.

  4. Klik Submit.

Langkah 2: Pra-pemeriksaan pernyataan SQL

Setelah mengirimkan tiket, sistem secara otomatis melakukan pra-pemeriksaan pada tiket. Jika tiket gagal pra-pemeriksaan, modifikasi pernyataan SQL sesuai petunjuk dan kirimkan tiket kembali.

image

Langkah 3: Tinjau dan setujui tiket

Setelah tiket lolos pra-pemeriksaan, klik Submit for Approval. Di pesan Prompt, klik OK.

Catatan

Secara default, tiket perubahan data disetujui oleh DBA. Untuk informasi lebih lanjut tentang cara mengubah template persetujuan default, lihat bagian Ubah template persetujuan default dari topik "Koreksi SQL".

Langkah 4: Lakukan perubahan data

Penting

Disarankan untuk melakukan perubahan data selama jam-jam sepi.

  1. Setelah aplikasi disetujui, klik Execute Change. Di kotak dialog Task Settings, konfigurasikan parameter eksekusi tugas yang dijelaskan dalam tabel berikut dan klik Confirm Execution.

    Catatan
    • Langkah ini dilewati secara otomatis jika Anda mengatur parameter Execution Method ke Automatically Execute Upon Approval di langkah Apply.

    • Setelah tugas yang ditangguhkan dilanjutkan, skrip dapat dieksekusi dari posisi di mana skrip ditangguhkan.

    Parameter

    Deskripsi

    Execution Strategy

    Menentukan apakah tugas untuk tiket dijalankan segera atau pada waktu yang dijadwalkan. Nilai valid:

    • Running immediately: Jika Anda memilih opsi ini, DMS menjalankan tugas segera setelah Anda klik Confirm Execution.

    • Schedule: Jika Anda memilih opsi ini, Anda harus menentukan waktu. Setelah Anda klik Konfirmasi Eksekusi, DMS menjalankan tugas pada waktu yang dijadwalkan. Misalnya, Anda dapat menentukan untuk menjalankan tugas pada 00:00:00 tanggal 22 Mei 2024.

    Specify End Time

    Menentukan waktu ketika tugas berakhir. Sistem menghentikan tugas pada waktu akhir yang ditentukan terlepas dari apakah tugas selesai. Ini mencegah tugas memengaruhi bisnis Anda selama jam sibuk.

    Catatan

    Waktu akhir tugas aktual mungkin memiliki deviasi ±1 menit dari waktu akhir yang ditentukan.

    Enable Submit as Single Transaction

    Menentukan apakah akan mengirimkan semua pernyataan sebagai transaksi tunggal. Secara default, saklar ini dimatikan. Nilai valid:

    • on: Semua pernyataan SQL yang terlibat dalam perubahan ini dikirimkan sebagai transaksi. Jika pernyataan SQL gagal, semua pernyataan DML yang dieksekusi dalam transaksi yang sama akan dikembalikan. Pernyataan DDL tidak dapat dikembalikan.

    • off: Setiap pernyataan SQL dikirimkan sebagai transaksi. Jika pernyataan SQL gagal, transaksi dihentikan, tetapi pernyataan SQL yang dieksekusi tidak dikembalikan.

    Enable Backup

    Menentukan apakah akan mencadangkan data. Secaradefault, saklar ini dimatikan. Setelah Anda mengaktifkan cadangan, Anda dapat menggunakan file cadangan untuk memulihkan data. Nilai valid:

    Catatan
    • Cadangan data hanya didukung untuk pernyataan UPDATE dan DELETE.

    • Anda tidak dapat mencadangkan data untuk database MongoDB atau Redis.

    • on: DMS menghasilkan pernyataan tertentu untuk mencadangkan data yang terpengaruh ketika pernyataan UPDATE atau DELETE dieksekusi.

      • Jika database adalah database MySQL atau MariaDB, DMS menghasilkan pernyataan REPLACE INTO.

        Catatan

        Tipe database MySQL yang didukung termasuk ApsaraDB RDS for MySQL, PolarDB for MySQL, PolarDB-X, dan database MySQL yang tidak berada di Alibaba Cloud.

      • Jika database bukan database MySQL atau MariaDB, DMS menghasilkan pernyataan INSERT.

    • off: DMS tidak menghasilkan pernyataan untuk cadangan data.

    Primary/Secondary Node Check

    Anda dapat mengaktifkan fitur ini untuk terus menjaga sinkronisasi data antara node utama dan cadangan, memberikan ketersediaan tinggi dan pemulihan kesalahan yang cepat.

    Canary Release Type

    Kebijakan untuk mengeksekusi pernyataan SQL. Nilai valid:

    • No Canary Release: DMS secara otomatis mengeksekusi semua pernyataan SQL dalam tugas.

      Suspend after Executing the First SQL Statement: Setelah pernyataan SQL pertama berhasil dieksekusi, DMS secara otomatis menjeda eksekusi SQL. Jika Anda perlu melanjutkan, klik Retry. Kemudian, DMS mengeksekusi pernyataan SQL yang tersisa segera tanpa jeda lebih lanjut.

      Suspend after Executing an SQL Statement: DMS menjeda setelah eksekusi setiap pernyataan SQL tunggal. Anda perlu mengklik Retry secara manual untuk mengeksekusi pernyataan SQL berikutnya.

    Catatan

    Eksekusi tugas SQL dipantau oleh titik pemeriksaan yang dikonfigurasikan dalam security rules untuk mengontrol eksekusi SQL. Contoh titik pemeriksaan termasuk mekanisme timeout kunci database sebelum eksekusi SQL, pemeriksaan beban database sebelum eksekusi SQL, dan kebijakan tidur setelah eksekusi SQL. Untuk memeriksa titik pemeriksaan yang dikonfigurasikan dalam aturan keamanan untuk mengontrol eksekusi SQL, buka halaman detail aturan keamanan, dan klik SQL execution control di panel sisi kiri. Untuk informasi lebih lanjut tentang cara memodifikasi pengaturan titik pemeriksaan default, lihat Konfigurasikan kontrol pada eksekusi SQL.

    • Setelah tugas selesai, Anda dapat mengklik Details di kolom Actions tiket untuk melihat status tiket, jumlah kali tugas dijalankan, jumlah baris yang terpengaruh, pernyataan yang dieksekusi, dan log.

    • Setelah tugas selesai, Anda dapat membuka tab SQLConsole dari database untuk memeriksa apakah data tabel sesuai dengan harapan Anda.

  2. Opsional. Buat tiket rollback dan pulihkan data asli.

    Jika data tidak berubah sesuai harapan, Anda dapat membuat tiket rollback atau secara manual mengajukan tiket Modifikasi Data Normal untuk memulihkan data. Bagian berikut menjelaskan cara membuat tiket rollback:

    1. Di bagian Execute, klik Generate Rollback Ticket di kolom Tindakan database yang ingin Anda kelola.

    2. Pilih sumber untuk rollback dan klik OK. Sumber berikut didukung:

      • Teks rollback: teks rollback yang diisi sebelumnya saat Anda mengonfigurasi informasi tiket.

      • Lampiran rollback: lampiran rollback yang diunggah saat Anda mengonfigurasi informasi tiket.

      • File cadangan: lampiran cadangan yang dihasilkan selama eksekusi tiket.

        Catatan

        Untuk menggunakan file cadangan untuk memulihkan data, Anda harus mengaktifkan fitur cadangan sebelum melakukan perubahan data.

    3. Opsional. Konfigurasikan teks rollback, lampiran rollback, atau file cadangan berdasarkan kebutuhan bisnis Anda.

      • Teks rollback: Anda dapat memodifikasi pernyataan SQL di editor.

      • Lampiran rollback atau file cadangan: Anda harus mengunduh lampiran rollback atau file cadangan ke komputer Anda, memodifikasi pernyataan SQL, dan kemudian mengunggah lampiran rollback atau file cadangan ke tiket rollback.

    4. Konfirmasi informasi rollback dan klik Submit. Proses tiket berikutnya sama dengan proses tiket Modifikasi Data Normal.

  3. Unduh file cadangan.

    Jika Anda ingin menyimpan file cadangan atau mengunggah file cadangan ke DMS setelah perubahan, Anda harus mengunduh file cadangan.

    1. Klik Unduh Cadangan di kolom Tindakan. File cadangan berisi informasi berikut:

      • Pernyataan SQL asli yang dieksekusi untuk mengubah data.

      • Klausa SELECT dalam pernyataan SQL asli.

      • Pernyataan SQL yang digunakan untuk cadangan data.

      Contoh:

      /*
      [Database]:   rds@rm-bp144d5ky4l4rli0417****.mysql.rds.aliyuncs.com:3306[rds mysql]
      */
      
      /*
      [SQL]:
      
      
      UPDATE t_order
      SET product_id = 88
      WHERE id = 10054
      [BACKUP SQL]:    SELECT *
      FROM t_order
      WHERE id = 10054
      */
      REPLACE INTO `t_order`(`id`,`product_id`,`gmt_create`,`gmt_modified`,`customer_id`,`price`,`status`,`province`) VALUES
      (10054,81,'2021-12-14 09:44:44','2021-12-14 09:44:44',71,63.45,'Success','Hangzhou');
                                          
    2. Ekstrak pernyataan SQL untuk cadangan data dari file cadangan. Setelah Anda konfirmasi bahwa pernyataan tersebut valid, ajukan tiket Modifikasi Data Normal untuk memulihkan data database berdasarkan skenario aktual.

      Catatan

      Jika pernyataan UPDATE yang tidak tepat dieksekusi untuk perubahan data dan sistem menghasilkan pernyataan INSERT untuk cadangan data, Anda harus memulihkan data secara manual.

  4. Opsional. Verifikasi apakah data berubah sesuai harapan.

    1. Di bagian Basic Information panel detail tiket, geser penunjuk mouse ke atas nama database dan klik Query.

      image

    2. Di tab SQLConsole database, periksa apakah data tabel sesuai dengan harapan Anda.