Selain membuat cadangan, ada berbagai tugas dan fungsi yang tersedia SQL Server yang dapat meningkatkan kinerja dan keandalan basis data Anda. Kami sebelumnya telah menunjukkan kepada Anda bagaimana mem-backup database SQL Server dengan skrip baris perintah sederhana sehingga dengan cara yang sama kami menyediakan skrip yang akan memungkinkan Anda untuk dengan mudah melakukan tugas pemeliharaan umum.
Memadatkan / Menyusut Basis Data [/ Compact]
Ada beberapa faktor yang berkontribusi pada ruang disk fisik yang digunakan oleh database SQL Server. Hanya untuk menyebutkan beberapa:
Memadatkan (atau mengecilkan) basis data akan mengambil kembali ruang disk yang tidak digunakan. Untuk database kecil (200 MB atau kurang) ini biasanya tidak akan terlalu banyak, tetapi untuk database besar (1 GB atau lebih) ruang reklamasi mungkin signifikan.
Reindexing Database [/ Reindex]
Sama seperti terus-menerus membuat, mengedit dan menghapus file dapat menyebabkan fragmentasi disk, memasukkan, memperbarui dan menghapus rekaman dalam database dapat menyebabkan fragmentasi tabel. Hasil praktisnya sama dalam operasi baca dan tulis yang mengalami pukulan kinerja. Meskipun bukan analogi yang sempurna, mengindeks ulang tabel dalam database pada dasarnya mendefragasinya. Dalam beberapa kasus, ini dapat secara signifikan meningkatkan kecepatan pengambilan data.
Karena cara kerja SQL Server, tabel harus diindeks ulang secara individual. Untuk database dengan sejumlah besar tabel, ini dapat benar-benar menyakitkan untuk dilakukan secara manual, tetapi skrip kami mengenai setiap tabel di masing-masing basis data dan membangun kembali semua indeks.
Verifikasi Integritas [/ Verifikasi]
Agar database tetap berfungsi dan menghasilkan hasil yang akurat, ada banyak item integritas yang harus ada. Untungnya, masalah integritas fisik dan / atau logis tidak terlalu umum, tetapi merupakan praktik yang baik untuk sesekali menjalankan proses verifikasi integritas pada basis data Anda dan meninjau hasilnya.
Ketika proses verifikasi dijalankan melalui skrip kami, hanya kesalahan yang dilaporkan, jadi tidak ada berita adalah berita baik.
Script batch SQLMaint kompatibel dengan SQL 2005 dan lebih tinggi dan harus dijalankan pada mesin yang memiliki alat SQLCMD diinstal (diinstal sebagai bagian dari instalasi SQL Server). Disarankan Anda menjatuhkan skrip ini ke lokasi yang ditetapkan dalam variabel PATH Windows Anda (yaitu C: Windows) sehingga dengan mudah dapat dipanggil seperti aplikasi lain apa pun dari baris perintah.
Untuk melihat informasi bantuan, cukup masukkan:
SQLMaint /?
Contoh
Untuk menjalankan kompak dan kemudian memverifikasi pada database "MyDB" menggunakan koneksi tepercaya:
SQLMaint MyDB / Kompak / Verifikasi
Untuk menjalankan reindex dan kemudian memadatkan pada "MyDB" pada contoh bernama "Khusus" menggunakan "sa" pengguna dengan kata sandi "123456":
SQLMaint MyDB /S:.Special / U: sa / P: 123456 / Reindex / Compact
Menggunakan dari Inside of a Batch Script
Sementara skrip batch SQLMaint dapat digunakan seperti aplikasi dari baris perintah, ketika Anda menggunakannya di dalam skrip batch lain, itu harus didahului dengan kata kunci CALL.
Sebagai contoh, skrip ini menjalankan semua tugas pemeliharaan pada setiap database non-sistem pada instalasi SQL Server default menggunakan otentikasi tepercaya:
@ECHO OFF
SETLOCAL EnableExtensions
SET DBList = "% TEMP% DBList.txt"
SqlCmd -E -h-1 -w 300 -Q “SET NoCount ON; SELECT Name FROM master.dbo.sysDatabases WHERE Name Not IN ('master', 'model', 'msdb', 'tempdb') ”>% DBList%
FOR / F "usebackq token = 1" %% i IN (% DBList%) DO (
HUBUNGI SQLMaint "%% i" / Kompak / Reindex / Verifikasi
ECHO +++++++++++
)
JIKA ADA% DBList% DEL / F / Q% DBList%
ENDLOCAL
Unduh SQLMaint Batch Script dari SysadminGeek.com