Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengakses basis data tempdb pada instans DB Microsoft SQL Server di Amazon RDS
Anda dapat mengakses basis data tempdb
pada instans DB Microsoft SQL Server di Amazon RDS. Anda dapat menjalankan kode di tempdb
dengan menggunakan Transact-SQL melalui Microsoft SQL Server Management Studio (SSMS), atau aplikasi klien SQL standar lainnya. Untuk informasi selengkapnya tentang terhubung ke instans DB Anda, lihat Menghubungkan ke instans DB yang menjalankan mesin basis data Microsoft SQL Server.
Pengguna master untuk instans DB Anda diberi akses CONTROL
ke tempdb
sehingga pengguna ini dapat mengubah opsi basis data tempdb
. Pengguna utama bukan pemilik basis data untuk basis data tempdb
. Jika perlu, pengguna induk dapat memberikan akses CONTROL
kepada pengguna lain sehingga mereka juga dapat mengubah opsi basis data tempdb
.
catatan
Anda tidak dapat menjalankan Perintah Konsol basis data (DBCC) pada basis data tempdb
.
Memodifikasi opsi basis data tempdb
Anda dapat memodifikasi opsi basis data pada basis data tempdb
di instans DB Amazon RDS Anda. Untuk informasi selengkapnya tentang opsi mana yang dapat dimodifikasi, lihat basis data tempdb
Opsi basis data seperti opsi ukuran file maksimum persisten setelah Anda memulai ulang instans DB Anda. Anda dapat memodifikasi opsi basis data untuk mengoptimalkan performa ketika mengimpor data, dan untuk mencegah kehabisan penyimpanan.
Mengoptimalkan performa ketika mengimpor data
Untuk mengoptimalkan performa saat mengimpor sejumlah besar data ke dalam instans DB Anda, atur properti SIZE
dan FILEGROWTH
dari basis data tempdb ke jumlah besar. Untuk informasi selengkapnya tentang cara mengoptimalkan tempdb
, lihat Mengoptimalkan performa tempdb
Contoh berikut menunjukkan pengaturan ukuran menjadi 100 GB dan pertumbuhan file menjadi 10 persen.
alter database[tempdb] modify file (NAME = N'
templog
', SIZE=100GB
, FILEGROWTH =10%
)
Mencegah masalah penyimpanan
Untuk mencegah basis data tempdb
menggunakan semua ruang disk yang tersedia, atur properti MAXSIZE
. Contoh berikut ini menunjukkan cara mengatur properti ke 2048 MB.
alter database [tempdb] modify file (NAME = N'
templog
', MAXSIZE =2048MB
)
Mengurangi basis data tempdb
Ada dua cara untuk mengurangi basis data tempdb
di instans DB Amazon RDS Anda. Anda dapat menggunakan prosedur rds_shrink_tempdbfile
, atau Anda dapat mengatur properti SIZE
,
Menggunakan prosedur rds_shrink_tempdbfile
Anda dapat menggunakan prosedur Amazon RDS msdb.dbo.rds_shrink_tempdbfile
untuk mengurangi basis data tempdb
. Anda hanya dapat memanggil rds_shrink_tempdbfile
jika Anda memiliki akses CONTROL
ke tempdb
. Ketika Anda memanggil rds_shrink_tempdbfile
, tidak ada waktu henti untuk instans DB Anda.
Prosedur rds_shrink_tempdbfile
memiliki parameter berikut.
Nama parameter | Tipe data | Default | Diperlukan | Deskripsi |
---|---|---|---|---|
|
SYSNAME |
— |
diperlukan |
Nama logis dari file yang akan dikurangi. |
|
int |
null |
opsional |
Ukuran baru untuk file, dalam megabyte. |
Contoh berikut ini akan mengambil nama file untuk basis data tempdb
.
use tempdb; GO select name, * from sys.sysfiles; GO
Contoh berikut mengurangi file basis data tempdb
bernama test_file
, dan meminta ukuran baru sebesar 10
megabyte:
exec msdb.dbo.rds_shrink_tempdbfile @temp_filename = N'
test_file
', @target_size =10
;
Mengatur properti SIZE
Anda juga dapat mengurangi basis data tempdb
dengan mengatur properti SIZE
, lalu memulai ulang instans DB Anda. Untuk informasi selengkapnya tentang cara memulai ulang instans DB, lihat Mem-boot ulang instans DB.
Contoh berikut ini menunjukkan cara mengatur properti SIZE
ke 1024 MB.
alter database [tempdb] modify file (NAME = N'
templog
', SIZE =1024MB
)
Konfigurasi TempDB untuk penerapan Multi-AZ
Jika instans RDS untuk SQL Server DB Anda berada dalam Penyebaran Multi-AZ menggunakan Pencerminan Database (DBM) atau Grup Ketersediaan Selalu Aktif (AG), ingatlah pertimbangan berikut untuk menggunakan database. tempdb
Anda tidak dapat mereplikasi tempdb
data dari instans DB utama Anda ke instans DB sekunder Anda. Ketika Anda gagal ke instance DB sekunder, tempdb
pada instance DB sekunder itu akan kosong.
Anda dapat menyinkronkan konfigurasi opsi tempdb
database, termasuk ukuran file dan pengaturan pertumbuhan otomatis, dari instans DB utama Anda ke instans DB sekunder Anda. Sinkronisasi tempDB
konfigurasi didukung pada semua RDS untuk versi SQL Server. Anda dapat mengaktifkan sinkronisasi otomatis tempdb
konfigurasi dengan menggunakan prosedur tersimpan berikut:
EXECUTE msdb.dbo.rds_set_system_database_sync_objects @object_types = 'TempDbFile';
penting
Sebelum menggunakan prosedur rds_set_system_database_sync_objects
tersimpan, pastikan Anda telah mengatur tempdb
konfigurasi pilihan Anda pada instans DB utama Anda, bukan pada instans DB sekunder Anda. Jika Anda membuat perubahan konfigurasi pada instans DB sekunder Anda, tempdb
konfigurasi pilihan Anda dapat dihapus ketika Anda mengaktifkan sinkronisasi otomatis.
Anda dapat menggunakan fungsi berikut untuk mengonfirmasi apakah sinkronisasi otomatis tempdb
konfigurasi diaktifkan:
SELECT * from msdb.dbo.rds_fn_get_system_database_sync_objects();
Ketika sinkronisasi otomatis tempdb
konfigurasi dihidupkan, akan ada nilai pengembalian untuk object_class
bidang tersebut. Ketika dimatikan, tidak ada nilai yang dikembalikan.
Anda dapat menggunakan fungsi berikut untuk menemukan objek terakhir kali disinkronkan, dalam waktu UTC:
SELECT * from msdb.dbo.rds_fn_server_object_last_sync_time();
Misalnya, jika Anda memodifikasi tempdb
konfigurasi pada 01:00 dan kemudian menjalankan rds_fn_server_object_last_sync_time
fungsi, nilai yang dikembalikan untuk last_sync_time
harus setelah 01:00, menunjukkan bahwa sinkronisasi otomatis terjadi.
Jika Anda juga menggunakan replikasi pekerjaan SQL Server Agent, Anda dapat mengaktifkan replikasi untuk pekerjaan Agen SQL dan tempdb
konfigurasi dengan menyediakannya dalam parameter: @object_type
EXECUTE msdb.dbo.rds_set_system_database_sync_objects @object_types = 'SQLAgentJob,TempDbFile';
Untuk informasi selengkapnya tentang replikasi pekerjaan SQL Server Agent, lihat. Mengaktifkan replikasi pekerjaan SQL Server Agent
Sebagai alternatif untuk menggunakan prosedur rds_set_system_database_sync_objects
tersimpan untuk memastikan bahwa perubahan tempdb
konfigurasi disinkronkan secara otomatis, Anda dapat menggunakan salah satu metode manual berikut:
catatan
Kami merekomendasikan untuk mengaktifkan sinkronisasi otomatis tempdb
konfigurasi dengan menggunakan prosedur yang rds_set_system_database_sync_objects
disimpan. Menggunakan sinkronisasi otomatis mencegah kebutuhan untuk melakukan tugas-tugas manual ini setiap kali Anda mengubah tempdb
konfigurasi Anda.
-
Pertama, ubah instans DB Anda dan matikan Multi-AZ, kemudian modifikasi tempdb, dan terakhir aktifkan kembali Multi-AZ. Metode ini tidak melibatkan waktu henti apa pun.
Untuk informasi selengkapnya, lihat Memodifikasi instans DB Amazon RDS.
-
Perubahan pertama
tempdb
dalam instans primer asli, kemudian gagal secara manual, dan terakhir memodifikasitempdb
di instans utama baru. Metode ini melibatkan waktu henti.Untuk informasi selengkapnya, lihat Mem-boot ulang instans DB.