EraBackup - Microsoft SQL Server Yedekleme Yetkileri Rehberi

 

Amaç

Bu dokümanın amacı, EraBackup kullanılarak Microsoft SQL Server veritabanlarının

yedeklenebilmesi için gerekli minimum yetkileri ve güvenlik gereksinimlerini açıklamaktır.

 

Doküman özellikle aşağıdaki operasyonları kapsar:

- Full Database Backup

- Differential Backup

- Transaction Log Backup

- Backup doğrulama işlemleri

- Backup metadata sorguları

- Disk veya network share üzerine yedek yazılması

EraBackup MSSQL Yedekleme Mimarisi

EraBackup, MSSQL instance'ına bağlanarak aşağıdaki işlemleri gerçekleştirir:

 

1. SQL Server instance keşfi

2. Database listesi toplama

3. Recovery model kontrolü

4. Backup zinciri analizi

5. Full / Diff / Log backup işlemlerinin tetiklenmesi

6. Backup metadata doğrulama

7. Backup dosyasının storage ortamına taşınması

 

Bu süreçte EraBackup MSSQL instance üzerinde belirli SQL yetkilerine ihtiyaç duyar.

 

Gerekli SQL Server Yetkileri

EraBackup MSSQL yedekleme işlemi için aşağıdaki yetkilerden biri gereklidir:

 

Seçenek 1 (Minimum Yetki Modeli)

- İlgili database üzerinde db_backupoperator rolü

 

Seçenek 2 (Önerilen Kurulum)

- sysadmin rolü

 

db_backupoperator rolü yalnızca backup operasyonlarını gerçekleştirebilir.

sysadmin rolü ise tüm instance üzerinde tam yetki sağlar.

 

Database Bazlı Yetkiler

EraBackup database seviyesinde aşağıdaki işlemleri yapabilir:

 

- BACKUP DATABASE

- BACKUP LOG

- Backup doğrulama

- Backup history kontrolü

 

Bu işlemler için aşağıdaki rol yeterlidir:

 

db_backupoperator

 

Örnek:

ALTER ROLE db_backupoperator ADD MEMBER erabackup_user

 

Instance Seviyesi Yetkiler

EraBackup bazı durumlarda instance seviyesinde bilgi toplar.

 

Örnek işlemler:

 

- Database discovery

- Backup zinciri kontrolü

- msdb backup history analizi

- AlwaysOn / Cluster kontrolü

 

Bu işlemler için aşağıdaki yetkiler gerekebilir:

 

VIEW SERVER STATE

VIEW ANY DATABASE

 

MSDB Yetkileri

EraBackup backup geçmişini analiz etmek için aşağıdaki tabloları okuyabilir:

 

msdb.dbo.backupset

msdb.dbo.backupmediafamily

msdb.dbo.restorehistory

 

Bu tablolar backup zincirinin doğruluğunu kontrol etmek için kullanılır.

 

Dosya Sistemi Yetkileri

SQL Server backup dosyasını yazarken SQL sorgusunu çalıştıran kullanıcı değil,

SQL Server servis hesabı dosyayı oluşturur.

 

Bu nedenle backup klasörü üzerinde aşağıdaki izinler verilmelidir:

 

Read

Write

Modify

List Folder Contents

 

Örnek:

 

D:\EraBackup\MSSQLBackups

Network Share Backup

EraBackup backup dosyalarını network share üzerine yazabilir.

 

Örnek path:

 

\\backup-storage\sql-backups

 

Bu durumda SQL Server servis hesabına aşağıdaki izinler verilmelidir:

 

Share Permission: Change / Full Control

NTFS Permission: Modify

 

Minimum Yetki Modeli (Önerilen)

Güvenli kurulum için aşağıdaki model önerilir:

 

1. EraBackup için ayrı SQL login oluşturulur

2. Backup alınacak database'lerde db_backupoperator rolü verilir

3. SQL Server servis hesabına backup dizini yazma yetkisi verilir

 

Pratik Kurulum Modeli

Büyük ortamlarda kurulum kolaylığı için aşağıdaki yöntem tercih edilebilir:

 

1. EraBackup SQL kullanıcısına sysadmin rolü verilir

2. Backup dizin izinleri tanımlanır

3. EraBackup tüm instance üzerindeki database'leri otomatik keşfeder

 

Örnek SQL Komutları

SQL Login oluşturma:

 

CREATE LOGIN erabackup_user WITH PASSWORD = 'StrongPassword!'

 

Database user oluşturma:

 

USE MyDatabase

CREATE USER erabackup_user FOR LOGIN erabackup_user

 

Backup rolü verme:

ALTER ROLE db_backupoperator ADD MEMBER erabackup_user

 

Sysadmin verme:

ALTER SERVER ROLE sysadmin ADD MEMBER erabackup_user

 

Sık Karşılaşılan Hatalar

Cannot open backup device

Sebep: Backup path erişim izni yok

 

BACKUP DATABASE permission denied

Sebep: db_backupoperator veya sysadmin yetkisi yok

 

Network share yazma hatası

Sebep: SQL Server servis hesabının share izni yok

 

Sonuç

EraBackup ile MSSQL yedekleme işlemleri için iki ana gereksinim vardır:

 

SQL Yetkileri:

db_backupoperator veya sysadmin

 

Dosya Sistemi Yetkileri:

SQL Server servis hesabının backup dizinine yazma yetkisi

 

Minimum yetki prensibi açısından db_backupoperator tercih edilir.