manajemen
Database adalah aspek penting dari aplikasi apa pun yang bergantung pada penyimpanan dan pengambilan data. Memastikan integritas dan ketersediaan data adalah hal yang paling penting, dan salah satu langkah paling mendasar dalam proses ini adalah membuat cadangan rutin database SQL Server Anda.
Advertisement
Dalam artikel ini, kami akan menunjukkan cara membuat skrip PowerShell yang mengotomatiskan tugas pencadangan database SQL Server dan mengarsipkan file cadangan menggunakan 7-Zip. Otomatisasi ini tidak hanya akan menghemat waktu Anda tetapi juga memberikan cara yang efisien untuk memelihara arsip cadangan yang aman dan terorganisir. Skrip PowerShell untuk Mencadangkan Database SQL Server
Untuk membuat skrip PowerShell yang mencadangkan database SQL Server dan mengarsipkan file cadangan menggunakan 7-Zip , ikuti langkah berikut:
Langkah 1: Persiapkan Sistem Anda
Pertama-tama, Buka terminal PowerShell dengan menekan tombol Windows atau klik tombol Mulai. Ketik "PowerShell" di bilah pencarian. Klik "Windows PowerShell" dari hasil pencarian untuk membukanya. Pastikan bahwa SQL Server Management Objects (SMO) dan cmdlet SQL Server diinstal. Anda dapat menginstalnya menggunakan perintah berikut:Install-Module -Name SqlServer1Install-Module-NameSqlServerInstall 7-Zip di sistem Anda jika belum diinstal. Langkah 2: Buat Skrip Cadangan
Buka editor teks dan rekatkan kode PowerShell berikut:
# Muat cmdlet SQL Server
Impor-Modul SqlServer
# Tetapkan variabel
$ServerInstance = "localhost"
$DatabaseName = "NamaDatabaseAnda"
$BackupDir = "C:Backup"
$ArchiveDir = "C:BackupArchive"
$Timestamp = Get-Date -Format "yyyyMMdd_HHmmss"
$BackupFile = "${BackupDir}${DatabaseName}_${Timestamp}.bak"
$ArchiveFile = "${ArchiveDir}${DatabaseName}_${Timestamp}.7z"
# Buat direktori cadangan dan arsip jika tidak ada
if (!(Test-Path $BackupDir)) {
New-Item -ItemType Directory -Path $BackupDir
}
if (!(Test-Path $ArchiveDir)) {
New-Item -ItemType Directory -Path $ArchiveDir
}
# Cadangkan database SQL Server
Backup-SqlDatabase -ServerInstance $ServerInstance -Database $DatabaseName -BackupFile $BackupFile
Write-Host "Pencadangan basis data berhasil diselesaikan."
# Arsipkan cadangan menggunakan 7-Zip
& "C:Program Files7-Zip7z.exe" a -t7z $ArchiveFile $BackupFile
Write-Host "Backup berhasil diarsipkan."
# Hapus file cadangan asli
Hapus-Item $BackupFile
Tulis-Host "File cadangan asli dihapus."123456789101112131415161718192021222232425262728293031# Muat cmdlet SQL ServerImport-ModuleSqlServer # Tetapkan variabel$ServerInstance="localhost"$DatabaseName="YourDatabaseName"$BackupDir="C:Backup"CA:ArchiveDir Archive"$Timestamp=Get-Date-Format"yyyyMMdd_HHmmss"$BackupFile="${BackupDir}${DatabaseName}_${Timestamp}.bak"$ArchiveFile="${ArchiveDir}${DatabaseName}_$ {Timestamp}.7z" # Buat cadangan dan direktori arsip jika tidak adaif(!(Test-Path$BackupDir)){ New-Item-ItemTypeDirectory-Path$BackupDir}if(!(Test-Path$ArchiveDir)) { New-Item-ItemTypeDirectory-Path$ArchiveDir} # Cadangkan database SQL ServerBackup-SqlDatabase-ServerInstance$ServerInstance-Database$DatabaseName-BackupFile$BackupFileWrite-Host"Pencadangan database berhasil diselesaikan." # Arsipkan cadangan menggunakan 7-Zip&"C:Program Files7-Zip7z.exe"a-t7z$ArchiveFile$BackupFileWrite-Host"Backup berhasil diarsipkan." # Hapus file cadangan asliHapus-Item$BackupFileWrite-Host"File cadangan asli dihapus."
Ganti nilai placeholder dengan nama instance server Anda yang sebenarnya, nama basis data, dan direktori cadangan dan arsip pilihan. Simpan skrip dengan ekstensi file .ps1, seperti BackupSqlDatabase.ps1.Langkah 3: Jalankan Script
Jalankan skrip dengan mengeksekusi perintah berikut di konsol PowerShell:
.BackupSqlDatabase.ps11.BackupSqlDatabase.ps1
Script ini mengimpor modul SqlServer, mencadangkan database SQL Server yang ditentukan, dan mengarsipkan file cadangan menggunakan 7-Zip. File cadangan asli kemudian dihapus, hanya menyisakan versi yang diarsipkan.
Perhatikan bahwa skrip menganggap 7-Zip diinstal di “C:Program Files7-Zip7z.exe”. Jika dipasang di lokasi yang berbeda, perbarui skrip sesuai.
Kesimpulan
Kesimpulannya, kami telah menyediakan skrip PowerShell yang mengotomatiskan pencadangan dan pengarsipan database SQL Server. Dengan memanfaatkan skrip ini, Anda dapat memastikan bahwa data Anda tetap terlindungi dan tersedia, bahkan jika terjadi kegagalan sistem yang tidak terduga atau kerusakan data. Otomatisasi ini juga akan menghemat waktu dan sumber daya Anda, memungkinkan Anda untuk fokus pada aspek penting lainnya dari tugas manajemen basis data Anda. Sebagai administrator server, penting untuk memiliki strategi cadangan yang andal dan terorganisir, dan dengan skrip PowerShell ini, Anda diperlengkapi dengan baik untuk membuat dan memelihara arsip cadangan yang aman untuk database SQL Server Anda.
Referensi tecadmin.com