Aracılığıyla paylaş


Öğretici: Azure portalı aracılığıyla DMS (klasik) kullanarak PostgreSQL'i çevrimiçi PostgreSQL için Azure Veritabanı geçirme

Önemli

Daha kolay ve verimli bir geçiş deneyimi için yeni geçiş hizmetini PostgreSQL için Azure Veritabanı kullanmanızı öneririz. Bu hizmet, çeşitli kaynak ortamları destekleyerek süreci basitleştirir ve PostgreSQL için Azure Veritabanı sorunsuz bir geçiş sağlar.

Azure Veritabanı Geçiş Hizmeti hakkında daha fazla bilgi için Azure Veritabanı Geçiş Hizmeti nedir? makalesine bakın.

Azure Veritabanı Geçiş Hizmeti kullanarak veritabanlarını bir şirket içi PostgreSQL örneğinden uygulamaya en az kapalı kalma süresiyle PostgreSQL için Azure Veritabanı geçirebilirsiniz. Bu öğreticide, Azure Veritabanı Geçiş Hizmeti'daki çevrimiçi geçiş etkinliğini kullanarak listdb örnek veritabanını PostgreSQL 13.10'un şirket içi örneğinden PostgreSQL için Azure Veritabanı'a geçirirsiniz.

Bu öğreticide aşağıdakilerin nasıl yapılacağını öğreneceksiniz:

  • pg_dump yardımcı programını kullanarak örnek şemayı geçirin.
  • Azure Veritabanı Geçiş Hizmeti örneği oluşturun.
  • Azure Veritabanı Geçiş Hizmeti'de bir geçiş projesi oluşturun.
  • Geçişi çalıştırma.
  • Geçişi izleme.
  • Tam geçiş gerçekleştirin.

Çevrimiçi geçiş gerçekleştirmek için Azure Veritabanı Geçiş Hizmeti kullanmak için Premium fiyatlandırma katmanını temel alan bir örnek oluşturmanız gerekir. Geçiş işlemi sırasında veri hırsızlığını önlemek için diski şifreleriz

Önemli

En iyi geçiş deneyimi için Microsoft, hedef veritabanıyla aynı Azure bölgesinde bir Azure Veritabanı Geçiş Hizmeti örneği oluşturmanızı önerir. Verileri bölgeler veya coğrafyalar arasında taşımak, geçiş sürecini yavaşlatabilir ve hatalara neden olabilir.

Önkoşullar

Bu öğreticiyi tamamlamak için aşağıdakileri yapmanız gerekir:

  • PostgreSQL topluluk sürümünü indirin ve yükleyin. Kaynak PostgreSQL Sunucusu sürümü = 9.4 olmalıdır >. Daha fazla bilgi için bkz. PostgreSQL için Azure Veritabanı - Esnek Sunucuda Desteklenen PostgreSQL sürümleri.

    Ayrıca hedef PostgreSQL için Azure Veritabanı sürümünün şirket içi PostgreSQL sürümüne eşit veya bundan sonraki bir sürüm olması gerektiğini unutmayın. Örneğin, PostgreSQL 12 PostgreSQL için Azure Veritabanı >= 12 sürümüne geçiş yapabilir ancak PostgreSQL için Azure Veritabanı 11 sürümüne geçiremez.

  • PostgreSQL için Azure Veritabanı sunucusu oluşturma.

  • ExpressRoute veya VPN kullanarak şirket içi kaynak sunucularınıza siteden siteye bağlantı sağlayan Azure Resource Manager dağıtım modelini kullanarak Azure Veritabanı Geçiş Hizmeti için bir Microsoft Azure Sanal Ağı oluşturun. Sanal ağ oluşturma hakkında daha fazla bilgi için Sanal Ağ Belgeleri'ne ve özellikle adım adım ayrıntıları içeren hızlı başlangıç makalelerine bakın.

    Sanal ağ kurulumu sırasında ExpressRoute'u Microsoft ile ağ eşlemesi ile kullanıyorsanız hizmetin sağlanacağı alt ağa aşağıdaki hizmet uç noktalarını ekleyin:

    • Hedef veritabanı uç noktası (örneğin, SQL uç noktası, Azure Cosmos DB uç noktası, vb.)
    • Depolama uç noktası
    • Service Bus uç noktası

    Azure Veritabanı Geçiş Hizmeti'nin İnternet bağlantısı olmadığından bu yapılandırma gereklidir.

  • Sanal ağınız için Ağ Güvenlik Grubu (NSG) kurallarının ServiceBus, Depolama ve AzureMonitor için ServiceTag'in 443 numaralı giden bağlantı noktasını engellemediğinden emin olun. Sanal ağ NSG trafiğini filtreleme hakkında ayrıntılı bilgi için Ağ güvenlik grupları ile ağ trafiğini filtreleme makalesine bakın.

  • Windows Güvenlik Duvarınızı veritabanı altyapısı erişimi için yapılandırın.

  • Azure Veritabanı Geçiş Hizmeti'ne kaynak PostgreSQL Server erişimi sağlamak için Windows güvenlik duvarınızı açın. Varsayılan ayarlarda 5432 numaralı TCP bağlantı noktası kullanılır.

  • Kaynak veritabanlarınızın önünde bir güvenlik duvarı gereci kullanırken, Azure Veritabanı Geçiş Hizmeti geçiş için kaynak veritabanlarına erişmesine izin vermek için güvenlik duvarı kuralları eklemeniz gerekebilir.

  • Azure Veritabanı Geçiş Hizmeti'nin hedef veritabanlarına erişmesini sağlama amacıyla PostgreSQL için Azure Veritabanı'na yönelik olarak sunucu düzeyinde güvenlik duvarı kuralı oluşturun. Azure Veritabanı Geçiş Hizmeti için kullanılan sanal ağın alt ağ aralığını belirtin.

  • postgresql.config dosyasında mantıksal çoğaltmayı etkinleştirin ve aşağıdaki parametreleri ayarlayın:

    • wal_level = logical
    • max_replication_slots = [yuva sayısı], beş yuvaya ayarlamanızı öneririz
    • max_wal_senders =[eşzamanlı görev sayısı] - max_wal_senders parametresi, çalışabilecek eşzamanlı görevlerin sayısını ayarlar; önerilen ayar 10 görevdir
  • Kullanıcının, kaynak veritabanını barındıran sunucuda ÇOĞALTMA rolüne sahip olması gerekir.

Önemli

Mevcut veritabanınızdaki tüm tablolar, değişikliklerin hedef veritabanıyla eşitlenebilmesini sağlamak için birincil anahtara ihtiyaç duyar.

Örnek şemayı geçirme

Tablo şemaları, dizinler ve saklı yordamlar gibi tüm veritabanı nesnelerini tamamlamak için kaynak veritabanındaki şemayı ayıklamamız ve veritabanına uygulamamız gerekir.

  1. Bir veritabanına yönelik şema döküm dosyası oluşturmak için pg_dump -s komutunu kullanın.

    pg_dump -O -h hostname -U db_username -d db_name -s > your_schema.sql
    

    Örneğin, listdb veritabanı için bir şema döküm dosyası oluşturmak için:

    pg_dump -O -h localhost -U postgres -d listdb -s -x > listdbSchema.sql
    

    pg_dump yardımcı programını kullanma hakkında daha fazla bilgi için pg-dump öğreticisindeki örneklere bakın.

  2. Hedef ortamınız olan PostgreSQL için Azure Veritabanı içinde boş bir veritabanı oluşturun.

    Veritabanı bağlama ve oluşturma hakkında ayrıntılı bilgi için Azure portalında PostgreSQL için Azure Veritabanı sunucusu oluşturma makalesine bakın.

  3. Şema döküm dosyasını geri yükleyerek, şemayı oluşturduğunuz hedef veritabanına aktarın.

    psql -h hostname -U db_username -d db_name < your_schema.sql
    

    Örneğin:

    psql -h mypgserver-20170401.postgres.database.azure.com  -U postgres -d migratedb < listdbSchema.sql
    

    Not

    Geçiş hizmeti, güvenilir ve sağlam bir veri geçişi sağlamak için yabancı anahtarları etkinleştirme/devre dışı bırakma işlemlerini dahili olarak işler ve tetikler. Sonuç olarak, hedef veritabanı şemasında herhangi bir değişiklik yapma konusunda endişelenmeniz gerekmez.

Kaynak sağlayıcısını kaydetme

İlk Veritabanı Geçiş Hizmeti örneğinizi oluşturmadan önce Microsoft.DataMigration kaynak sağlayıcısını kaydedin.

  1. Azure Portal’ında oturum açın. Abonelikler'i arayın ve seçin.

    Portal aboneliklerini göster'in ekran görüntüsü.

  2. Azure Veritabanı Geçiş Hizmeti örneğini oluşturmak istediğiniz aboneliği seçin ve ardından Kaynak sağlayıcıları'nı seçin.

    Kaynak sağlayıcılarını göster'in ekran görüntüsü.

  3. Geçiş için arama yapın ve ardından Microsoft.DataMigration için kaydet'i seçin.

    Kaynak sağlayıcısını kaydet'in ekran görüntüsü.

Azure Veritabanı Geçiş Hizmeti örneğini oluşturma

  1. Azure portalı menüsünde veya Giriş sayfasında Kaynak oluştur'u seçin. Azure Veritabanı Geçiş Hizmeti arayın ve seçin.

    Azure Market'in ekran görüntüsü.

  2. Azure Veritabanı Geçiş Hizmeti ekranında Oluştur'u seçin.

    Azure Veritabanı Geçiş Hizmeti örneği oluştur'un ekran görüntüsü.

    Uygun Kaynak sunucu türünü ve Hedef sunucu türünü seçin ve Veritabanı Geçiş Hizmeti (Klasik) seçeneğini belirleyin.

    Veritabanı Geçiş Hizmeti Seç (Klasik) senaryosunun ekran görüntüsü.

  3. Geçiş Hizmeti Temel Bilgileri Oluştur ekranında:

    • Aboneliği seçin.
    • Yeni bir kaynak grubu oluşturun veya mevcut bir kaynak grubunu seçin.
    • Azure Veritabanı Geçiş Hizmeti örneği için bir ad belirtin.
    • Azure Veritabanı Geçiş Hizmeti örneğini oluşturmak istediğiniz konumu seçin.
    • Hizmet modu olarak Azure'ı seçin.
    • Fiyatlandırma katmanını seçin. Maliyetler ve fiyatlandırma katmanları hakkında daha fazla bilgi için fiyatlandırma sayfasına bakın.

    Azure Veritabanı Geçiş Hizmeti örneği temel ayarlarını yapılandır'ın ekran görüntüsü.

    • İleri: Ağ'ı seçin.
  4. Geçiş Hizmeti ağ oluşturma ekranında:

    • Mevcut bir sanal ağı seçin veya yeni bir ağ oluşturun. Sanal ağ, Azure Veritabanı Geçiş Hizmeti kaynak sunucuya ve hedef örneğe erişim sağlar. Azure portalında sanal ağ oluşturma hakkında daha fazla bilgi için Azure portalını kullanarak sanal ağ oluşturma makalesine bakın.

    Azure Veritabanı Geçiş Hizmeti örneği ağ ayarlarını yapılandırma işleminin ekran görüntüsü.

    • Ayrıntıları gözden geçirmek için Gözden Geçir + Oluştur'u ve ardından oluştur'u seçerek hizmeti oluşturun.

    • Birkaç dakika sonra Azure Veritabanı Geçiş hizmeti örneğiniz oluşturulur ve kullanıma hazır olur:

    Geçiş hizmeti oluşturuldu

Geçiş projesi oluşturma

Hizmet oluşturulduktan sonra Azure portaldan bulun, açın ve yeni bir geçiş projesi oluşturun.

  1. Azure portalda Tüm hizmetler'i seçin, Azure Veritabanı Geçiş Hizmeti araması yapın ve Azure Veritabanı Geçiş Hizmeti'ni seçin.

    Arama Azure Veritabanı Geçiş Hizmeti ekran görüntüsü.

  2. Azure Veritabanı Geçiş Hizmeti ekranında, oluşturduğunuz Azure Veritabanı Geçiş Hizmeti örneğin adını arayın, örneği seçin ve ardından + Yeni Geçiş Projesi'ni seçin.

    Azure Veritabanı Geçiş Hizmeti örneğinde arama işleminin ekran görüntüsü.

  3. Yeni geçiş projesi ekranında proje için bir ad belirtin, Kaynak sunucu türü metin kutusunda PostgreSQL'i seçin, Hedef sunucu türü metin kutusunda PostgreSQL için Azure Veritabanı'yi seçin.

  4. Geçiş etkinliği türü bölümünde Çevrimiçi veri geçişi'ni seçin.

    Yeni geçiş projesi oluşturma seçeneğinin ekran görüntüsü.

    Alternatif olarak, Yalnızca proje oluştur'u seçerek geçiş projesini şimdi oluşturabilir ve geçişi daha sonra yürütebilirsiniz.

  5. Verileri geçirmek için Azure Veritabanı Geçiş Hizmeti başarıyla kullanmak için Etkinlik oluştur ve çalıştır'ı seçin.

Kaynak ayrıntılarını belirtme

  1. Kaynak Ayrıntıları Ekle ekranında, kaynak PostgreSQL örneğinin bağlantı ayrıntılarını belirtin.

    Kaynak ayrıntıları ekle ekranının ekran görüntüsü.

Hedef ayrıntılarını belirtme

  1. Hedef ayrıntıları ekranında, şemanın pg_dump kullanılarak dağıtıldığı önceden sağlanmış örnek olan hedef PostgreSQL için Azure Veritabanı - Esnek sunucu için bağlantı ayrıntılarını belirtin.

    Hedef ayrıntıları ekle ekranının ekran görüntüsü.

  2. İleri:Veritabanlarını seçin'i seçin ve ardından Veritabanlarını seçin ekranında geçiş için kaynak ve hedef veritabanını eşleyin.

    Hedef veritabanı kaynak veritabanıyla aynı veritabanı adını içeriyorsa Azure Veritabanı Geçiş Hizmeti varsayılan olarak hedef veritabanını seçer.

    Hedef ekranlı harita veritabanlarının ekran görüntüsü.

  3. İleri:Tabloları seçin'i seçin ve ardından Tabloları seçin ekranında geçirilmesi gereken tabloları seçin.

    Geçiş için tabloları seçme ekranının ekran görüntüsü.

  4. İleri:Geçiş ayarlarını yapılandırma'yı seçin ve ardından Geçiş ayarlarını yapılandır ekranında varsayılan değerleri kabul edin.

    Geçiş ayarı yapılandırma ekranının ekran görüntüsü.

  5. Geçiş özeti ekranında, Etkinlik adı metin kutusunda, geçiş etkinliği için bir ad belirtin ve ardından kaynak ve hedef ayrıntılarının daha önce belirttiğinizle eşleştiğinden emin olmak için özeti gözden geçirin.

    Geçiş özeti ekranının ekran görüntüsü.

Geçişi çalıştırma

Geçişi başlat'ı seçin.

Geçiş etkinliği penceresi görüntülenir ve etkinliğin Durumu, Yedekleme Sürüyor olarak gösterilecek şekilde güncelleştirilmelidir.

Geçişi izleme

  1. Geçiş etkinliği ekranında Yenile'yi seçerek, gösterilen verileri, geçişin Durum bilgisi Tamamlandı olana kadar güncelleştirebilirsiniz.

    Geçiş izleme ekranının ekran görüntüsü.

  2. Geçiş tamamlandığında, Veritabanı Adı'nın altında, Tam veri yükü ve Artımlı veri eşitleme işlemleri için geçiş durumuna ulaşmak için belirli bir veritabanı seçin.

    Not

    Tam veri yükü ilk yük geçiş durumunu gösterirken Artımlı veri eşitleme değişiklik veri yakalama (CDC) durumunu gösterir.

    Geçiş tam yük ayrıntıları ekranının ekran görüntüsü.

    Geçiş artımlı yük ayrıntıları ekranının ekran görüntüsü.

Tam geçiş gerçekleştirme

İlk Tam yük tamamlandıktan sonra, veritabanları Geçiş için hazır olarak işaretlenir.

  1. Veritabanı geçişini tamamlamaya hazır olduğunuzda Tam Geçişi Başlat seçeneğini belirleyin.

  2. Kaynak veritabanına gelen tüm işlemlerin durdurulmasını sağlamak için Bekleyen değişiklikler sayacının görünmesi 0 için bekleyin, Onayla onay kutusunu seçin ve uygula'yı seçin.

    Tam tamamlama ekranının ekran görüntüsü.

  3. Veritabanı geçiş durumu Tamamlandı olarak gösterildiğinde dizileri yeniden oluşturun (varsa) ve uygulamalarınızı yeni hedef PostgreSQL için Azure Veritabanı örneğine bağlayın.