Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu konu başlığında, hem veritabanı hem de örnek düzeyinde varsayılan ayarlarla Microsoft Azure'a SQL Server yönetilen yedeklemesinin nasıl etkinleştirileceği açıklanmaktadır. Ayrıca e-posta bildirimlerinin nasıl etkinleştirileceği ve yedekleme etkinliğinin nasıl izleneceği açıklanır.
Bu öğretici Azure PowerShell kullanır. Öğreticiye başlamadan önce Azure PowerShell'i indirip yükleyin.
Önemli
Ayrıca gelişmiş seçenekleri etkinleştirmek veya özel bir zamanlama kullanmak istiyorsanız, SQL Server yönetilen yedeklemesini Microsoft Azure'a etkinleştirmeden önce bu ayarları yapılandırın. Daha fazla bilgi için Microsoft Azure'a SQL Server yönetilen yedekleme için gelişmiş seçenekleri yapılandırma bölümüne bakın.
Azure Blob Depolama kapsayıcısını oluşturma
İşlem için bir Azure hesabı gerekir. Zaten bir hesabınız varsa sonraki adıma geçin. Aksi takdirde , ücretsiz deneme sürümünü kullanmaya başlayabilir veya satın alma seçeneklerini keşfedebilirsiniz.
Depolama hesapları hakkında daha fazla bilgi için bkz. Azure Depolama Hesapları hakkında.
Azure hesabınızda oturum açın.
az loginAzure depolama hesabı oluşturun. Zaten bir depolama hesabınız varsa sonraki adıma geçin. Aşağıdaki komut, Doğu ABD bölgesinde adlı
<backupStorage>bir depolama hesabı oluşturur.az storage account create -n <backupStorage> -l "eastus" --resource-group <resourceGroup>Yedekleme dosyaları için adlı
<backupContainer>bir blob kapsayıcısı oluşturun.$keys = az storage account keys list --account-name <backupStorage> --resource-group <resourceGroup> | ConvertFrom-Json az storage container create --name <backupContainer> --account-name <backupStorage> --account-key $keys[0].valueKapsayıcıya erişmek için Paylaşılan Erişim İmzası (SAS) oluşturun. Aşağıdaki komut, blob kapsayıcısı
<backupContainer>için bir yıl içinde süresi dolan bir SAS belirteci oluşturur.az storage container generate-sas --name <backupContainer> --account-name <backupStorage> --account-key $keys[0].value
Uyarı
Bu adımlar Azure portalı kullanılarak da gerçekleştirilebilir.
Çıkış, kapsayıcının URL'sini ve/veya SAS belirtecini içerir. Aşağıda bir örnek verilmiştir:
https://managedbackupstorage.blob.core.windows.net/backupcontainer?sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl
URL dahil edilirse, soru işaretindeki SAS belirtecinden ayırın (soru işaretini eklemeyin). Örneğin, önceki çıkış aşağıdaki iki değerle sonuçlanır.
| Türü | Çıktı |
|---|---|
| Kapsayıcı URL'si | https://managedbackupstorage.blob.core.windows.net/backupcontainer |
| SAS belirteci | sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl |
KAPSAYıCı URL'sini ve SAS'yi SQL KIMLIK BILGISI oluştururken kullanmak üzere kaydedin. SAS hakkında daha fazla bilgi için bkz. Paylaşılan Erişim İmzaları, Bölüm 1: SAS Modelini Anlama.
Azure'a yönetilen yedeklemeyi etkinleştirme
SAS URL'si için bir SQL Kimlik Bilgisi oluşturun: Blob kapsayıcı URL'si için SQL Kimlik Bilgileri oluşturmak için SAS belirtecini kullanın. SQL Server Management Studio'da, aşağıdaki Transact-SQL sorgusunu kullanarak aşağıdaki örneği temel alarak blob kapsayıcı URL'nizin kimlik bilgilerini oluşturun:
CREATE CREDENTIAL [https://managedbackupstorage.blob.core.windows.net/backupcontainer] WITH IDENTITY = 'Shared Access Signature', SECRET = 'sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl'SQL Server Agent hizmetinin Başlatıldığından ve Çalıştığından emin olun: Şu anda çalışmıyorsa SQL Server Agent'ı başlatın. Microsoft Azure'a SQL Server yönetilen yedeklemesi, yedekleme işlemlerini gerçekleştirmek için SQL Server Agent'ın örnekte çalıştırılmasını gerektirir. Yedekleme işlemlerinin düzenli olarak gerçekleştirilediğinden emin olmak için SQL Server Agent'ı otomatik olarak çalışacak şekilde ayarlamak isteyebilirsiniz.
Bekletme süresini belirleyin: Yedekleme dosyalarının saklama süresini belirleyin. Bekletme süresi gün cinsinden belirtilir ve 1 ile 90 arasında değişebilir.
MICROSOFT Azure'a SQL Server yönetilen yedeklemesini etkinleştirme ve yapılandırma: SQL Server Management Studio'yu başlatın ve hedef SQL Server örneğine bağlanın. Veritabanı adı, kapsayıcı URL'si ve bekletme süresi değerlerini gereksinimlerinize göre değiştirdikten sonra sorgu penceresinde aşağıdaki deyimi çalıştırın:
Önemli
Yönetilen yedeklemeyi örnek düzeyinde etkinleştirmek için parametresini
NULLbelirtindatabase_name.USE msdb; GO EXEC msdb.managed_backup.sp_backup_config_basic @enable_backup = 1, @database_name = 'yourdatabasename', @container_url = 'https://managedbackupstorage.blob.core.windows.net/backupcontainer', @retention_days = 30 GOMicrosoft Azure'a SQL Server yönetilen yedeklemesi artık belirttiğiniz veritabanında etkinleştirilmiştir. Veritabanındaki yedekleme işlemlerinin çalıştırılması 15 dakika kadar sürebilir.
Genişletilmiş Olay Varsayılan Yapılandırması'nın gözden geçirilmesi: Aşağıdaki Transact-SQL deyimini çalıştırarak Genişletilmiş Olay ayarlarını gözden geçirin.
SELECT * FROM msdb.managed_backup.fn_get_current_xevent_settings()Yönetici, İşletimsel ve Analitik kanal olaylarının varsayılan olarak etkinleştirildiğini ve devre dışı bırakılamayacağını görmeniz gerekir. Bu, el ile müdahale gerektiren olayları izlemek için yeterli olmalıdır. Hata ayıklama olaylarını etkinleştirebilirsiniz, ancak hata ayıklama kanalları, Microsoft Azure'a SQL Server tarafından yönetilen yedeklemenin sorunları algılamak ve çözmek için kullandığı bilgilendirme ve hata ayıklama olaylarını içerir.
Sistem Durumu için Bildirimi Etkinleştir ve Yapılandır: SQL Server yönetilen yedeklemesi için Microsoft Azure'a yönelik bir saklı yordam, dikkat gerektiren hata veya uyarıların e-posta bildirimlerini göndermek üzere bir ajan işi oluşturmaktadır. Aşağıdaki adımlarda e-posta bildirimlerini etkinleştirme ve yapılandırma işlemi açıklanmaktadır:
Örnekte henüz etkinleştirilmemişse Veritabanı Postası'nı ayarlayın. Daha fazla bilgi için bkz. Veritabanı Postasını Yapılandırma.
SQL Server Aracı Bildirimi'ni Veritabanı Postası kullanacak şekilde yapılandırın. Daha fazla bilgi için bkz. SQL Server Agent Mail'i Veritabanı Postasını Kullanacak Şekilde Yapılandırma.
Yedekleme hatalarını ve uyarılarını almak için e-posta bildirimlerini etkinleştirin: Sorgu penceresinde aşağıdaki Transact-SQL deyimlerini çalıştırın:
EXEC msdb.managed_backup.sp_set_parameter @parameter_name = 'SSMBackup2WANotificationEmailIds', @parameter_value = '<email1;email2>'
Yedekleme dosyalarını Azure Depolama Hesabında görüntüleyin: SQL Server Management Studio'dan veya Azure portalından depolama hesabına bağlanın. Belirttiğiniz kapsayıcıda tüm yedekleme dosyalarını görürsünüz. Veritabanı için Microsoft Azure'a SQL Server yönetilen yedeklemesini etkinleştirdikten sonra 5 dakika içinde bir veritabanı ve günlük yedeklemesi görebileceğinizi unutmayın.
Sistem Durumunu İzleme: Daha önce yapılandırdığınız e-posta bildirimlerini izleyebilir veya günlüğe kaydedilen olayları etkin bir şekilde izleyebilirsiniz. Olayları görüntülemek için kullanılan bazı örnek Transact-SQL Deyimleri aşağıda verilmiştir:
-- view all admin events USE msdb; GO DECLARE @startofweek datetime DECLARE @endofweek datetime SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) DECLARE @eventresult TABLE (event_type nvarchar(512), event nvarchar (512), timestamp datetime ) INSERT INTO @eventresult EXEC managed_backup.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek SELECT * from @eventresult WHERE event_type LIKE '%admin%'-- to enable debug events USE msdb; GO EXEC managed_backup.sp_set_parameter 'FileRetentionDebugXevent', 'True'-- View all events in the current week USE msdb; GO DECLARE @startofweek datetime DECLARE @endofweek datetime SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) EXEC managed_backup.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek;
Bu bölümde açıklanan adımlar özellikle SQL Server yönetilen yedeklemesini veritabanında ilk kez Microsoft Azure'a yapılandırmaya yönelik olarak hazırlanmıştır. Aynı sistem saklı yordamlarını kullanarak mevcut yapılandırmaları değiştirebilir ve yeni değerleri sağlayabilirsiniz.