Prosedur tersimpan untuk ruang tabel RDS untuk Db2 - Layanan Basis Data Relasional Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Prosedur tersimpan untuk ruang tabel RDS untuk Db2

Prosedur tersimpan berikut mengelola tablespace untuk Amazon RDS untuk database Db2. Untuk menjalankan prosedur ini, pengguna master harus terlebih dahulu terhubung ke rdsadmin database.

rdsadmin.create_tablespace

Membuat ruang tabel.

Sintaks

db2 "call rdsadmin.create_tablespace( 'database_name', 'tablespace_name', 'buffer_pool_name', tablespace_page_size, tablespace_initial_size, tablespace_increase_size, 'tablespace_type')"

Parameter

Parameter-parameter berikut diperlukan:

database_name

Nama database untuk membuat tablespace di. Tipe datanya varchar.

tablespace_name

Nama tablespace yang akan dibuat. Tipe datanya varchar.

Nama tablespace memiliki batasan berikut:

  • Itu tidak bisa sama dengan nama tablespace yang ada di database ini.

  • Itu hanya dapat berisi karakter_$#@a-zA-Z0-9.

  • Itu tidak bisa dimulai dengan _ atau$.

  • Itu tidak bisa dimulai denganSYS.

Parameter berikut ini bersifat opsional:

buffer_pool_name

Nama kolam buffer untuk menetapkan tablespace. Tipe datanya varchar. Default-nya adalah string kosong.

penting

Anda harus sudah memiliki kolam penyangga dengan ukuran halaman yang sama untuk dikaitkan dengan ruang tabel.

tablespace_page_size

Ukuran halaman tablespace dalam byte. Tipe datanya integer. Nilai yang valid:4096,8192,16384,32768. Defaultnya adalah ukuran halaman yang digunakan saat Anda membuat database dengan meneleponrdsadmin.create_database.

penting

Amazon RDS mendukung atomisitas tulis untuk halaman 4 KiB, 8 KiB, dan 16 KiB. Sebaliknya, 32 halaman KiB berisiko robek, atau sebagian data ditulis ke meja. Jika Anda menggunakan 32 halaman KiB, kami sarankan Anda mengaktifkan point-in-time pemulihan dan pencadangan otomatis. Jika tidak, Anda berisiko tidak dapat pulih dari halaman yang sobek. Untuk informasi selengkapnya, silakan lihat Pengantar cadangan dan Memulihkan instans DB ke waktu tertentu untuk Amazon RDS.

tablespace_initial_size

Ukuran awal ruang tabel dalam kilobyte (KB). Tipe datanya integer. Nilai yang valid: 48 atau lebih tinggi. Default-nya adalah null.

Jika Anda tidak menetapkan nilai, Db2 menetapkan nilai yang sesuai untuk Anda.

catatan

Parameter ini tidak berlaku untuk ruang tabel sementara karena sistem mengelola ruang tabel sementara.

tablespace_increase_size

Persentase yang digunakan untuk menambah ruang tabel apabila penuh. Tipe datanya integer. Nilai-nilai yang valid: 1100. Default-nya adalah null.

Jika Anda tidak menetapkan nilai, Db2 menetapkan nilai yang sesuai untuk Anda.

catatan

Parameter ini tidak berlaku untuk ruang tabel sementara karena sistem mengelola ruang tabel sementara.

tablespace_type

Ukuran ruang tabel. Tipe datanya char. Nilai yang valid: U (untuk data pengguna), T (untuk data sementara pengguna), atau S (untuk data sementara sistem). Default-nya adalah U.

Catatan penggunaan

RDSuntuk Db2 selalu membuat database besar untuk data.

Lihat informasi tentang pemeriksaan status pembuatan ruang tabel di rdsadmin.get_task_status.

Contoh

Contoh berikut membuat tablespace dipanggil SP8 dan menetapkan kumpulan buffer dipanggil BP8 untuk database yang dipanggil. TESTDB Tablespace memiliki ukuran halaman tablespace awal 4.096 byte, tablespace awal 1.000 KB, dan peningkatan ukuran tabel disetel ke 50%.

db2 "call rdsadmin.create_tablespace( 'TESTDB', 'SP8', 'BP8', 4096, 1000, 50)"

Contoh berikut menciptakan tablespace sementara yang disebutSP8. Ini menetapkan kumpulan buffer BP8 yang disebut berukuran 8 KiB untuk database yang disebut. TESTDB

db2 "call rdsadmin.create_tablespace( 'TESTDB', 'SP8', 'BP8', 8192, NULL, NULL, 'T')"

rdsadmin.alter_tablespace

Mengubah ruang tabel.

Sintaks

db2 "call rdsadmin.alter_tablespace( 'database_name', 'tablespace_name', 'buffer_pool_name', tablespace_increase_size, 'max_size', 'reduce_max', 'reduce_stop', 'reduce_value', 'lower_high_water', 'lower_high_water_stop', 'switch_online')"

Parameter

Parameter-parameter berikut diperlukan:

database_name

Nama basis data yang menggunakan ruang tabel. Tipe datanya varchar.

tablespace_name

Nama tablespace untuk diubah. Tipe datanya varchar.

Parameter berikut ini bersifat opsional:

buffer_pool_name

Nama kolam buffer untuk menetapkan tablespace. Tipe datanya varchar. Default-nya adalah string kosong.

penting

Anda harus sudah memiliki kolam penyangga dengan ukuran halaman yang sama untuk dikaitkan dengan ruang tabel.

tablespace_increase_size

Persentase yang digunakan untuk menambah ruang tabel apabila penuh. Tipe datanya integer. Nilai-nilai yang valid: 1100. Default-nya adalah 0.

max_size

Ukuran maksimum ruang tabel. Tipe datanya varchar. Nilai valid: integer K| M |G, atauNONE. Default-nya adalah NONE.

reduce_max

Menentukan apakah akan mengurangi tanda air tinggi ke batas maksimumnya. Tipe datanya char. Default-nya adalah N.

reduce_stop

Menentukan apakah akan menyela perintah reduce_max atau reduce_value sebelumnya. Tipe datanya char. Default-nya adalah N.

reduce_value

Jumlah atau persentase untuk mengurangi tanda air tinggi tablespace sebesar. Tipe datanya varchar. Nilai valid: integer K| M |G, atau 1100. Default-nya adalah N.

lower_high_water

Menentukan apakah akan menjalankan ALTER TABLESPACE LOWER HIGH WATER MARK perintah. Tipe datanya char. Default-nya adalah N.

lower_high_water_stop

Menentukan apakah akan menjalankan ALTER TABLESPACE LOWER HIGH WATER MARK STOP perintah. Tipe datanya char. Default-nya adalah N.

switch_online

Menentukan apakah akan menjalankan ALTER TABLESPACE SWITCH ONLINE perintah. Tipe datanya char. Default-nya adalah N.

Catatan penggunaan

Parameter opsional reduce_maxreduce_stop,reduce_value,lower_high_water,lower_high_water_stop,, dan switch_online saling eksklusif. Anda tidak dapat menggabungkannya dengan parameter opsional lainnya, sepertibuffer_pool_name, dalam rdsadmin.alter_tablespace perintah. Jika Anda menggabungkan parameter ini dengan parameter opsional lainnya dalam rdsadmin.alter_tablespace perintah, maka ketika Anda menjalankanrdsadmin.get_task_status, Db2 akan mengembalikan kesalahan seperti berikut:

DB21034E The command was processed as an SQL statement because it was not a valid Command Line Processor command. During SQL processing it returned: SQL1763N Invalid ALTER TABLESPACE statement for table space "TBSP_TEST" due to reason "12"

Lihat informasi tentang pemeriksaan status pengubahan ruang tabel di rdsadmin.get_task_status.

Contoh

Contoh berikut mengubah ruang tabel bernama SP8 dan menetapkan kolam penyangga bernama BP8 untuk basis data bernama TESTDB untuk menurunkan tanda air tinggi.

db2 "call rdsadmin.alter_tablespace( 'TESTDB', 'SP8', 'BP8', NULL, NULL, 'Y')"

Contoh berikut menjalankan REDUCE MAX perintah pada tablespace yang disebut TBSP_TEST dalam databaseTESTDB.

db2 "call rdsadmin.alter_tablespace( 'TESTDB', 'TBSP_TEST', NULL, NULL, NULL, 'Y')"

Contoh berikut menjalankan REDUCE STOP perintah pada tablespace yang disebut TBSP_TEST dalam databaseTESTDB.

db2 "call rdsadmin.alter_tablespace( 'TESTDB', 'TBSP_TEST', NULL, NULL, NULL, NULL, 'Y')"

rdsadmin.rename_tablespace

Mengganti nama tablespace.

Sintaks

db2 "call rdsadmin.rename_tablespace( ?, 'database_name', 'source_tablespace_name', 'target_tablespace_name')"

Parameter

Parameter-parameter berikut diperlukan:

?

Penanda parameter yang mengeluarkan pesan kesalahan. Parameter ini hanya menerima?.

database_name

Nama basis data yang memiliki ruang tabel. Tipe datanya varchar.

source_tablespace_name

Nama tablespace untuk mengganti nama. Tipe datanya varchar.

target_tablespace_name

Nama baru dari tablespace. Tipe datanya varchar.

Nama baru memiliki batasan berikut:

  • Itu tidak bisa sama dengan nama tablespace yang ada.

  • Itu hanya dapat berisi karakter_$#@a-zA-Z0-9.

  • Itu tidak bisa dimulai dengan _ atau$.

  • Itu tidak bisa dimulai denganSYS.

Catatan penggunaan

Untuk informasi tentang memeriksa status mengganti nama tablespace, lihat. rdsadmin.get_task_status

Anda tidak dapat mengganti nama tablespace milik database. rdsadmin

Contoh

Contoh berikut mengganti nama tablespace dipanggil SP8 ke SP9 dalam database yang disebut. TESTDB

db2 "call rdsadmin.rename_tablespace( ?, 'TESTDB', 'SP8'. 'SP9')"

rdsadmin.drop_tablespace

Mengedrop ruang tabel.

Sintaks

db2 "call rdsadmin.drop_tablespace( 'database_name', 'tablespace_name')"

Parameter

Parameter-parameter berikut diperlukan:

database_name

Nama basis data yang memiliki ruang tabel. Tipe datanya varchar.

tablespace_name

Nama tablespace yang akan dijatuhkan. Tipe datanya varchar.

Catatan penggunaan

Lihat informasi tentang pemeriksaan status pengedropan ruang tabel di rdsadmin.get_task_status.

Contoh

Contoh berikut menjatuhkan tablespace yang dipanggil SP8 dari database yang disebutTESTDB.

db2 "call rdsadmin.drop_tablespace( 'TESTDB', 'SP8')"