PowerShell kullanarak SharePoint'te Site Koleksiyonunu Yedekleme ve Geri Yükleme nasıl yapılır?
Gereksinim: PowerShell kullanarak SharePoint 2016'da bir site koleksiyonunu yedekleyin ve geri yükleyin.
PowerShell kullanarak SharePoint 2016'da bir site koleksiyonu nasıl yedeklenir?
Site koleksiyonlarını SharePoint Merkezi Yönetim'den yedekleyebilmenize rağmen, Merkezi Yönetici kullanılarak SharePoint Site Koleksiyonu Nasıl Yedeklenir? Merkezi yönetici yöntemi biraz hantaldır ve yedeklemeyi gerçekleştirmek biraz zaman alır. PowerShell ise site koleksiyonlarını yedeklemenin hızlı ve kolay bir yolunu sağlar. Komut dosyasıyla yazılmış işlemleri kullanabilir ve yedekleme yapmak gibi aynı görevlerin manuel olarak tekrarlanmasını önleyebiliriz. Bu cmdlet'leri çalıştırmak için SharePoint 2016 Yönetim Kabuğu'nu kullanın.
SharePoint site koleksiyonu yedeklemeleri, SharePoint WFE'lerden başlatılabilir ve sunucuda yerel yöneticinin üyesi olmanız ve grup yöneticisi olmanız gerekir.
PowerShell kullanarak SharePoint Site Koleksiyonunu yedekleme
SharePoint 2016'da bir site koleksiyonunun yedeğini almak için PowerShell sözdizimi aşağıda verilmiştir. Yedeklenecek site koleksiyonunu ve yedekleme dosyasını kaydetme yolunu tanımlamak için iki zorunlu parametre gerekir:
Backup-SPSite -Identity
- Zorla - aynı addaki yedekleme dosyasının üzerine yazar.
- NoSiteLock - yedekleme alınırken sitenin Salt Okunur moduna geçmesini engeller. Ancak yedekleme oluşturulurken birisi siteyi güncellerse, bu durum verilerin bozulmasına neden olabilir.
- SQLSnapshot'ı Kullan - Yedekleme başlamadan önce bir veritabanı anlık görüntüsü alınacak ve yedekleme, anlık görüntünün dışında gerçekleştirilecektir. Avantajı, yedekleme işlemi devam ederken sitede yolsuzluk korkusu olmadan değişiklik yapılabilmesidir. Yedekleme tamamlandığında anlık görüntü otomatik olarak silinecektir. Bu yöntemi kullanırken -NoSiteLock parametresini belirtmenize gerek yoktur.
SharePoint 2013'te Site Koleksiyonunu Yedekleme - PowerShell örneği:
Örneğin: "https://intranet.crescent.com/sites/IT" adresindeki "BT" site koleksiyonunu "C:\Backups\" konumuna yedeklemek için aşağıdaki PowerShell komutunu kullanırsınız:
Backup-SPSite https://intranet.crescent.com/sites/IT -path d:\backup\it.bak
Backup-SPSite cmdlet'i, belgeler, sayfalar, uyarılar, iş akışları vb. dahil olmak üzere site koleksiyonundaki her şeyi yedekler ve .bak uzantılı bir site koleksiyonu yedeği oluşturur.
Bir Web Uygulamasındaki Tüm Siteleri Yedekleyin:
PowerShell bize tekrarlanan görevleri daha az idari çabayla otomatikleştirme yeteneği sağlar. Örneğin, bir web uygulamasından tüm site koleksiyonlarını yedeklemeniz gerekiyorsa, aynı komutu birçok kez çalıştırmak zahmetli olacaktır. Bunun yerine, web uygulamasındaki her site koleksiyonunda döngü oluşturmak ve her birini yedeklemek için aşağıdaki PowerShell'i kullanabilirsiniz. Bu aynı zamanda çiftlikteki tüm web uygulamalarındaki tüm site koleksiyonlarına da genişletilebilir!
Tüm SharePoint site koleksiyonlarını yedeklemek için PowerShell betiği
SharePoint Server'da bir siteyi yedeklemek için Backup-SPSite cmdlet'ini kullanın:
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Configuration parameters
$BackupLocation="D:\backups\"
$WebAppURL="https://company.sharepoint.com"
#Get All site collections under the given web app
$SitesColl= Get-SPWebApplication $WebAppURL | Get-SPSite -limit ALL
#Iterate through each site collection
Foreach($Site in $SitesColl)
{
#Backup the site collection
$FilePath = $BackupLocation + $Site.Url.Replace("https://","").Replace("/","-") + ".bak"
Backup-SPSite -Identity $Site.Url -Path $FilePath -Force
Write-Host "Backup completed Successfully for $($Site.Url)"
}
PowerShell kullanarak SharePoint 2016'da site koleksiyonu yedeklemesini geri yükleyin:
PowerShell kullanarak SharePoint 2013'te site koleksiyonu nasıl geri yüklenir? Geri yükleme prosedürü yedekleme işlemine benzer. Restore-SPSite komutu, site koleksiyonu kimliğini ve yedekleme dosyası yolu parametrelerini gerektirir. SharePoint'te site koleksiyonlarını geri yüklemeye yönelik temel sözdizimi aşağıda verilmiştir:
Restore-SPSite -Identity
- GradualDelete - Geri yükleme yoluyla mevcut bir site koleksiyonunun üzerine yazdığınızda, GradualDelete parametresi, sunucu performansı üzerindeki etkiyi azaltmak için site koleksiyonunu zaman içinde kademeli olarak siler.
Örneğin “IT.bak” dosyasını geri yüklemek için aşağıdaki komutu kullanın:
Restore-SPSite https://portal.crescent.com/sites/IT -path c:\backup\it.bak
Bu, sağlanan BAK dosyasını yeni bir site koleksiyonuna geri yükleyecektir. Site koleksiyonu otomatik olarak oluşturulacaktır.
Lütfen unutmayın: Site koleksiyonunu geri yüklemek için bazı sınırlamalar vardır:
- İçerik veritabanı belirli bir site koleksiyonunun yalnızca bir kopyasını içerebilir. Dolayısıyla, yedeğinizi, yedeklendiği aynı web uygulamasına geri yüklemek istiyorsanız, ya orijinal site koleksiyonunu silmeniz ya da yedeğin saklanabileceği yeni bir içerik veritabanı oluşturmanız gerekir.
- Hedef grup kaynak grupla aynı yapıda veya daha yeni olduğu sürece, site koleksiyonu yedeği aynı gruba veya farklı bir gruba geri yüklenebilir.

