All Products
Search
Document Center

Data Management:Desain skema

Last Updated:May 22, 2026

Topik ini menjelaskan konfigurasi dasar, checkpoint, faktor, aksi, dan pustaka templat untuk desain skema, serta cara mengubah templat persetujuan default dan menambahkan aturan baru.

Informasi latar belakang

Tiket desain skema biasanya melibatkan beberapa instans dan mengikuti proses standar: mendesain skema di lingkungan pengujian, lalu menerbitkannya ke lingkungan produksi. Oleh karena itu, basic configurations, design rules, dan risk identification rules dalam aturan keamanan untuk desain skema menggunakan aturan keamanan yang terkait dengan change baseline database (database di lingkungan pengujian).

  • Design rules mencakup Save and Edit - Check Table Header, Save and Edit - Check Field, dan Save and Edit - Check Index. Pada halaman edit aturan keamanan, ketiga checkpoint ini muncul sebagai tab di bagian Checkpoints.

  • Risk identification rules mencakup Control Risks of Creating Tables, Control Risks of Modifying Fields, Control Risks of Modifying Indexes, dan Control Risks of SQL Executions. Ini juga muncul sebagai tab di bagian Checkpoints.

Namun, proses persetujuan menggunakan aturan keamanan database di lingkungan produksi. Misalnya, jika tiket desain skema diterbitkan ke database B, sistem akan menerapkan aturan keamanan instans B.

Konfigurasi dasar

Desain skema memiliki beberapa konfigurasi dasar:

  • Aktifkan Asymmetric Publishing: Secara default, perubahan desain skema hanya dapat diterbitkan secara simetris, artinya perubahan pada suatu tabel hanya dapat diterbitkan ke tabel dengan nama yang sama di database lain. Setelah Anda mengaktifkan asymmetric publishing, Anda dapat menerbitkan perubahan ke tabel target apa pun, terlepas dari namanya.

    Peringatan

    Fitur ini membawa risiko signifikan. Aktifkan dengan hati-hati dan hanya untuk skenario tertentu.

  • Proses Pengembangan: Ini merupakan konfigurasi utama dalam aturan keamanan desain skema. Konfigurasi ini menetapkan semua tahapan dalam siklus hidup tiket desain skema. Tabel berikut menjelaskan opsi-opsi tersebut.

    Parameter

    Deskripsi

    Step

    Terdiri dari node Design dan Publish.

    • Node Design: Node Design adalah default dan tidak dapat dihapus. Node ini menentukan lingkungan tempat tugas perubahan skema dirancang.

    • Node Publish: Setelah desain selesai, proses berlanjut ke tahap publish untuk menerapkan perubahan. Anda dapat menambahkan beberapa node publish.

    Node Name

    Nama node kustom, panjang maksimal 10 karakter.

    Database Environment

    Lingkungan tempat node dijalankan.

    Execution Strategy

    • Immediately: Tugas dieksekusi segera setelah disetujui.

    • Timed: Anda dapat menentukan waktu untuk menerbitkan tugas. Jika tugas disetujui sebelum waktu yang ditentukan, tugas akan dieksekusi pada waktu tersebut. Jika tidak, tugas dibatalkan.

    Can be Rolled Back

    Menentukan apakah tugas publish dapat dikembalikan ke node Design.

    Can be Skipped

    Menentukan apakah langkah saat ini dapat dilewati.

    Anchor

    Menandai titik di mana pengeditan tiket dibekukan. Setelah langkah yang di-anchor berhasil diselesaikan, skema tidak dapat lagi diedit, dan status tiket berubah menjadi Published.

    Operation

    Anda dapat menghapus node Publish sesuai kebutuhan.

  • Konfigurasi Tipe Field: Mengonfigurasi tipe data yang diizinkan untuk opsi Add Field.

  • Konfigurasi Tipe Indeks: Menentukan tipe data yang diizinkan dalam Add Index.

  • Templat Pembuatan Tabel: Mengonfigurasi templat untuk membuat tabel. Tabel baru memuat templat ini secara default. Templat ini bersifat opsional dan dapat dimodifikasi selama pembuatan tabel.

  • Larang memodifikasi tipe data field asli: Melarang modifikasi tipe data field yang sudah ada saat mengubah tabel.

  • Larang menghapus field asli: Menentukan apakah penghapusan field yang sudah ada saat mengubah tabel dilarang. Ini merupakan operasi berisiko tinggi, sehingga kami merekomendasikan untuk mengaktifkan opsi ini.

  • Larang mengganti nama field asli: Menentukan apakah penggantian nama field yang sudah ada saat mengubah tabel dilarang. Mengganti nama field yang sudah ada merupakan operasi berisiko tinggi. Kami merekomendasikan agar Anda mengaktifkan opsi ini.

  • Konfigurasi Izin Set Karakter Tabel: Mengonfigurasi set karakter yang diizinkan untuk tabel baru, seperti utf8 dan utf8mb4.

  • Templat Persetujuan Default untuk Desain Skema: Jika tidak ada aturan persetujuan yang dikonfigurasi untuk checkpoint Approval Rule Check, tiket desain skema akan menggunakan templat persetujuan default ini. Anda dapat mengubah proses persetujuan templat default dengan menggunakan fitur Switch Approval Template. Untuk informasi lebih lanjut, lihat Ubah templat persetujuan default.

  • Otomatis majukan tiket ke status closed setelah rilis: Jika diaktifkan, setelah node yang berisi anchor dalam proses pengembangan berhasil mengeksekusi perubahan, sistem secara otomatis memajukan tiket ke status closed. (Anchor harus berada di node rilis terakhir dalam proses pengembangan.)

Checkpoint

Desain skema melibatkan dua proses:

  • Proses simpan dan edit: Proses ini berkaitan dengan tiga checkpoint berikut, yang secara berurutan memeriksa spesifikasi untuk header tabel, field, dan indeks.

    • Save and Edit - Check Table Header

    • Save and Edit - Check Field

    • Save and Edit - Check Index

  • Proses eksekusi perubahan: Proses ini berkaitan dengan lima checkpoint berikut. Empat checkpoint pertama mengidentifikasi risiko perubahan Data Definition Language (DDL), sedangkan yang terakhir menentukan proses persetujuan untuk setiap risiko.

    • Control Risks of Creating Tables

    • Control Risks of Modifying Fields

    • Control Risks of Modifying Indexes

    • Control Risks of SQL Executions

    • Approval Rule Check

Kedua proses tersebut memiliki banyak templat aturan keamanan bawaan yang dapat Anda gunakan langsung atau sesuaikan. Untuk informasi lebih lanjut, lihat Tambahkan aturan baru.

Faktor dan aksi

  • Faktor: Faktor adalah variabel sistem bawaan yang menyediakan informasi kontekstual untuk pemeriksaan aturan keamanan, seperti tipe SQL atau jumlah baris yang terpengaruh. Semua faktor diawali dengan @fac. diikuti nama faktor. Setiap modul menyediakan faktor berbeda untuk checkpoint berbeda. Tabel berikut menjelaskan faktor yang tersedia untuk schema change.

    Faktor

    Deskripsi

    @fac.table_kind

    Jenis tabel yang sedang diedit. Nilai valid:

    • new: Tabel baru.

    • old: Tabel yang sudah ada.

    @fac.column_kind

    Jenis field dalam skema tabel. Nilai valid:

    • new: Field baru.

    • old: Field yang sudah ada.

    @fac.xxxx_old

    Mengambil nilai asli field atau indeks untuk perbandingan.

    @fac.column_is_primary

    Menunjukkan apakah field merupakan bagian dari primary key. Nilai valid:

    • true: Field termasuk dalam primary key.

    • false: Field tidak termasuk dalam primary key.

    @fac.column_type_support_default

    Menunjukkan apakah nilai default dapat diatur untuk tipe data field tersebut. Nilai valid:

    • true: Didukung.

    • false: Tidak didukung.

    Contohnya, tipe data CHAR mendukung nilai default, tetapi tipe data TEXT tidak.

    @fac.index_kind

    Jenis indeks dalam skema tabel. Nilai valid:

    • new: Indeks baru.

    • old: Indeks yang sudah ada.

    @fac.index_column_count

    Jumlah field dalam indeks.

    @fac.change_type

    Jenis perubahan field atau indeks yang diidentifikasi oleh database tempat pernyataan DDL dieksekusi. Nilai valid:

    • add

    • modify

    • delete

    @fac.altered_table_size

    Ukuran tabel yang dimodifikasi, dalam MB.

    @fac.online_execute

    Menunjukkan apakah perubahan dapat dieksekusi secara online. Nilai valid:

    • true: ONLINE

    • false: NOT ONLINE

    @fac.change_risk_level

    Tingkat risiko perubahan. Nilai valid:

    • high: Risiko tinggi

    • medium: Risiko menengah

    • low: Risiko rendah

    @fac.env_type

    Jenis lingkungan, yaitu pengenal lingkungan, seperti DEV atau PRODUCT. Untuk informasi lebih lanjut tentang jenis lingkungan, lihat Ubah jenis lingkungan instans.

  • Aksi: Aksi adalah perilaku yang dilakukan sistem setelah kondisi if terpenuhi, seperti melarang pengiriman tiket, memilih alur kerja, mengizinkan eksekusi, atau menolak eksekusi. Aksi-aksi ini menentukan tujuan utama aturan keamanan. Semua aksi diawali dengan @act. diikuti nama aksi. Setiap modul menyediakan aksi berbeda untuk checkpoint berbeda. Tabel berikut menjelaskan aksi yang tersedia untuk schema design.

    Aksi

    Deskripsi

    @act.block_submit

    Memblokir pengiriman dan menampilkan pesan error pada tahap penyimpanan tabel. Penggunaan: @act.block_submit 'Alasan pemblokiran'.

    @act.show_warning

    Digunakan pada tahap penyimpanan tabel. Menampilkan pesan peringatan tanpa memblokir pengiriman. Penggunaan: @act.show_warning 'Isi peringatan'.

    @act.mark_middle_risk

    Digunakan pada tahap identifikasi risiko. Menandai perubahan sebagai risiko menengah. Penggunaan: @act.mark_middle_risk 'Alasan'.

    @act.mark_high_risk

    Digunakan pada tahap identifikasi risiko. Menandai perubahan sebagai risiko tinggi. Penggunaan: @act.mark_high_risk 'Alasan'.

    @act.forbid_submit_publish

    Digunakan pada tahap konfigurasi proses persetujuan. Memblokir perubahan agar tidak dieksekusi. Penggunaan: @act.forbid_submit_publish 'Alasan'.

    @act.do_not_approve

    Menentukan ID templat persetujuan. Untuk informasi lebih lanjut, lihat Atur proses persetujuan.

    @act.choose_approve_template

    @act.choose_approve_template_with_reason

Pustaka templat

Security Rules menyediakan banyak templat aturan yang dapat Anda aktifkan langsung atau modifikasi sebelum diaktifkan. Tabel berikut mencantumkan templat untuk schema change.

Checkpoint

Templat

Save and Edit - Check Table Header

Larang menggunakan kata kunci sebagai nama tabel untuk tabel baru

Batasi panjang nama untuk tabel baru

Wajibkan komentar untuk tabel baru

Wajibkan nama tabel baru menggunakan huruf kecil

Wajibkan primary key (PK) untuk tabel baru

Wajibkan kunci unik (PK/UK) untuk tabel baru

Periksa jumlah indeks dan beri peringatan kepada pengguna jika jumlahnya berlebihan

Periksa apakah field tertentu ada untuk tabel baru

Save and Edit - Check Field

Larang menggunakan kata kunci sebagai nama field untuk field baru

Wajibkan komentar untuk field baru

Tentukan sensitivitas huruf besar/kecil untuk nama field baru

Wajibkan nilai default saat menambahkan field non-null ke tabel yang sudah ada

Wajibkan nilai default saat mengubah field yang sudah ada dari nullable menjadi non-nullable

Wajibkan field primary key baru bertipe integer

Wajibkan semua field dalam tabel baru bersifat non-nullable

Batasi panjang field baru bertipe CHAR

Batasi panjang field baru bertipe VARCHAR

Save and Edit - Check Index

Larang menggunakan kata kunci sebagai nama indeks untuk indeks baru

Tentukan sensitivitas huruf besar/kecil untuk nama indeks baru

Batasi format nama untuk indeks UNIQUE baru

Batasi format nama untuk indeks NORMAL baru

Batasi format nama untuk indeks FULLTEXT baru

Batasi format nama untuk indeks SPATIAL baru

Batasi jumlah field primary key baru

Batasi jumlah field indeks baru

Control Risks of Creating Tables

Kontrol jumlah shard untuk tabel logis

Kontrol primary key tabel

Kontrol jumlah total indeks dalam tabel

Control Risks of Modifying Fields

Kontrol penghapusan field

Kontrol tipe data field baru

Kontrol penggantian nama field

Kontrol modifikasi tipe data field

Control Risks of Modifying Indexes

Kontrol penghapusan primary key

Kontrol penghapusan indeks

Kontrol perubahan dari primary key menjadi indeks

Kontrol perubahan kolom dalam primary key

Kontrol modifikasi indeks umum

Kontrol tipe indeks baru

Control Risks of SQL Executions

Kontrol risiko instans inti

Kontrol mesin penyimpanan tabel

Kontrol risiko penguncian tabel atau perubahan skema tabel besar

Approval Rule Check

Larang menerapkan perubahan DDL apa pun ke database

Larang menerapkan perubahan DDL apa pun ke database produksi

Konfigurasi perubahan DDL tanpa persetujuan untuk database pengujian

Tetapkan aturan persetujuan berdasarkan tingkat risiko untuk lingkungan produksi

Ubah templat persetujuan default

  1. Masuk ke DMS 5.0.

  2. Arahkan penunjuk ke ikon 2023-01-28_15-57-17.png di pojok kiri atas dan pilih All Features > Security and disaster recovery (DBS) > Security Rules.

    Catatan

    Jika Anda menggunakan konsol DMS dalam mode normal, pilih Security and disaster recovery (DBS) > Security Rules di bilah navigasi atas.

  3. Pada halaman Security Rules, temukan set aturan target dan klik Edit di kolom Actions.

  4. Di panel navigasi kiri halaman Details, klik Schema Design.

  5. Pada tab Schema Design, klik Basic Configurations.

  6. Temukan Default Approval Template for Schema Design dan klik Edit di kolom Actions.

  7. Di kotak dialog Edit Configuration Item, klik Switch Approval Template.

  8. Temukan templat target berdasarkan Template Name-nya dan klik Select di kolom Actions.

    Catatan

    Anda juga dapat mengklik Reset to No Approval untuk mengizinkan tiket melewati proses persetujuan.

  9. Klik Submit.

Tambahkan aturan baru

  1. Masuk ke DMS 5.0.

  2. Arahkan penunjuk ke ikon 2023-01-28_15-57-17.png di pojok kiri atas dan pilih All Features > Security and disaster recovery (DBS) > Security Rules.

    Catatan

    Jika Anda menggunakan konsol DMS dalam mode normal, pilih Security and disaster recovery (DBS) > Security Rules di bilah navigasi atas.

  3. Pada halaman Security Rules, temukan set aturan target dan klik Edit di kolom Actions.

  4. Di panel navigasi kiri halaman Details, klik Schema Design.

  5. Pada tab Schema Design, klik Add Rule di sebelah kanan Actions.

  6. Di kotak dialog Add Rule - Schema Design, konfigurasikan parameter berikut.

    Parameter

    Deskripsi

    Checkpoint (Wajib)

    Pilih checkpoint untuk aturan baru. Desain skema menyediakan beberapa checkpoint. Untuk informasi lebih lanjut, lihat Checkpoint.

    Template Library (Opsional)

    Pustaka templat menyediakan banyak templat aturan. Setelah Anda memilih Checkpoint, Anda dapat memuat templat aturan dari Template Library. Untuk daftar templat yang tersedia, lihat Pustaka templat.

    Rule Name (Wajib)

    Nama kustom untuk aturan. Jika Anda memilih templat aturan dari Template Library, bidang ini akan diisi otomatis.

    Rule DSL (Wajib)

    Masukkan Rule DSL. Untuk informasi lebih lanjut tentang sintaks DSL, lihat dokumentasi. (Bidang ini diisi otomatis jika Anda memilih templat aturan di Template Library.)

  7. Klik Submit.

  8. Secara default, aturan baru berada dalam status Disabled. Temukan aturan tersebut dan klik Enable di kolom Actions.

  9. Di kotak dialog yang muncul, klik OK.