Öğretici: Oracle'dan PostgreSQL için Azure Veri Tabanı Esnek Sunucu'ya şema dönüştürmesi

Bu öğretici, şema çevirisini otomatikleştirmek ve doğrulamak için Microsoft Foundry ile Visual Studio Code PostgreSQL uzantısını kullanarak Oracle veritabanı şemalarını PostgreSQL için Azure Veri Tabanı dönüştürme konusunda size yol gösterir.

Oracle kaynağınıza ve PostgreSQL için Azure Veri Tabanı hedefinize bağlanmayı, Microsoft Foundry'yi yapılandırmayı, Geçiş Sihirbazı'nı çalıştırmayı ve oluşturulan PostgreSQL yapıtlarını gözden geçirmeyi kapsar. Başlamadan önce, hem sunucular hem de Microsoft Dökümhane dağıtımı için ağ erişimine ve kimlik bilgilerine sahip olduğunuzdan emin olun.

Dönüştürme sırasında şunları bekleyebilirsiniz:

  • Şema bulma: Araç, Oracle şema nesnelerinizi analiz eder.
  • AI işleme: Microsoft Foundry uyumlu nesneleri işler ve dönüştürür.
  • Doğrulama: Dönüştürülen nesneler geçici veritabanında doğrulanır.
  • İnceleme görevleri: Manuel inceleme gerektiren nesneler işaretlenir.
  • Çıktı oluşturma: Başarıyla dönüştürülen nesneler PostgreSQL dosyaları olarak kaydedilir.

Prerequisites

Bu bölümde, dönüştürmeye başlamadan önce Visual Studio Code'da Oracle'dan PostgreSQL için Azure Veritabanı'na şema dönüştürme özelliğini kullanmanın önkoşulları açıklanmaktadır.

Sistem gereksinimleri

Kategori Ayrıntılar
Visual Studio Code sürümü 1.95.2 veya üzeri
GitHub Copilot aboneliği Pro+, İş, Kurumsal

İşletim sistemi desteği

İşletim Sistemi Destek Ayrıntıları
Windows Yalnızca x64 mimarisi
Linux x64 mimarisi
macOS macOS 13+

Hedef PostgreSQL için Azure Veri Tabanı gereksinimleri

Bileşen Sürüm gereksinimi
PostgreSQL için Azure Veritabanı PostgreSQL sürüm 15 veya üzeri
Geçici veritabanı PostgreSQL için Azure Veritabanı esnek sunucu

Yapay zeka modeli gereksinimleri

Aşağıdaki yapay zeka bileşenlerinden birinin yapılandırılması gerekir:

AI bileşeni Model sürümü
Microsoft Dökümhanesi GPT-5.2 dağıtımı

Microsoft Foundry dağıtım yapılandırması

Microsoft Foundry'de gpt-5.2 modelini kullanan bir dağıtım oluşturun. Dağıtım adı, dağıtımı oluştururken seçtiğiniz addır; model adıyla eşleşmesi gerekmez.

Uç nokta, Microsoft Foundry kaynak URL'nizdir. Microsoft Foundry kaynakları çeşitli eşdeğer konak adlarını kullanıma sunar; aşağıdaki biçimlerden herhangi biri geçerlidir:

  • https://{your-resource}.services.ai.azure.com
  • https://{your-resource}.openai.azure.com
  • https://{your-resource}.cognitiveservices.azure.com

{your-resource} değerini Microsoft Foundry kaynak adınızla değiştirin (örneğin, oracletopg). Çıkarım yolunu doğrudan çağırmanız gerekiyorsa, geçerli önizleme yolu şeklindedir /openai/responses?api-version=2025-04-01-preview.

Uç nokta biçimleri ve çıkarım yolları hakkında daha fazla bilgi için bkz. Microsoft Döküm Modelleri için Endpoints.

Tip

Microsoft Foundry trafiğini merkezi yönetim, hız sınırlama ve gözlemlenebilirlik için Azure API Management üzerinden yönlendirmek üzere, Foundry kaynağınızın önünde bir yapay zeka ağ geçidi yapılandırın ve uç nokta olarak ağ geçidinin URL’sini kullanın. Daha fazla bilgi için bkz. Foundry kaynaklarınızda AI Gateway'i yapılandırma.

Gerekli veritabanı ayrıcalıkları

Şema dönüştürmesini çalıştırmadan önce, kullandığınız hesapların hem kaynak Oracle veritabanında hem de geçici PostgreSQL için Azure Veri Tabanı esnek sunucusunda gerekli asgari ayrıcalıklara sahip olduğundan emin olun. Aracın şemayı ve kodu analiz edebilmesi için Oracle hesabının veri ve sözlük görünümlerine okuma erişimi olması gerekir. PostgreSQL için Azure Veri Tabanı geçici hesabının doğrulama amacıyla şemalar, tablolar ve diğer nesneleri oluşturabilmesi gerekir. Mümkün olduğunda ayrılmış bir hizmet hesabı kullanın. En düşük ayrıcalık ilkesini izleyin. Geçici yükseltilmiş haklar vermek ve dönüştürmeyi başlatmadan önce bağlantıyı ve erişimi doğrulamak için DTA'larınızla eşgüdüm sağlayın.

Kaynak Oracle ayrıcalıkları

Kaynak Oracle veritabanında aşağıdaki en düşük ayrıcalıklar gereklidir:

Ayrıcalık Purpose
CONNECT Temel veritabanı bağlantısı
SELECT_CATALOG_ROLE Veri sözlüğü görünümlerine erişim
HERHANGI BIR SÖZLÜĞÜ SEÇIN Sistem meta verilerini ve sözlük nesnelerini okuma
SEÇMEK SYS.ARGUMENT$ Yordam ve fonksiyon parametre bilgilerine erişim

Geçici veritabanı yetkileri

PostgreSQL için Azure Veri Tabanı esnek sunucusunda (karalama veritabanı) aşağıdaki ayrıcalıklar gereklidir:

Ayrıcalık Purpose
ŞEMA OLUŞTURMA Doğrulama şemaları oluşturma
VERITABANıNDA OLUŞTUR Doğrulama için veritabanı nesneleri oluşturma
VERITABANINA BAĞLANTI IZNI VER Doğrulama işlemleri için bağlantı izinleri

Ağ gereksinimleri

  • Outbound connectivity: Microsoft Foundry uç noktaları.
  • Veritabanı bağlantısı: Hem kaynak Oracle hem de hedef PostgreSQL için Azure Veri Tabanı Flexible Server.
  • HTTPS erişimi: Visual Studio Code Uzantılar Marketi ve GitHub Copilot hizmetleri.
  • GitHub depo erişimi: https://github.com/microsoft/pgsql-tools/.

Oracle Instant Client (kalın istemci modu için)

Şema dönüştürme aracı, varsayılan olarak ek yazılım gerektirmeyen ince istemci modunu kullanarak Oracle'a bağlanır. Ortamınız kalın istemci modu gerektiriyorsa, Visual Studio Code çalıştıran makineye Oracle Instant Client'ı yükleyin. Araç, sqlnet.ora ve tnsnames.ora yapılandırmanızı okur ve bir ayar bunu gerektirdiğinde otomatik olarak kalın moda geçer.

Kaynak ortamınızdaki Oracle ağ yapılandırma dosyalarını denetleyerek kalın istemci modunun gerekli olup olmadığını belirleyebilirsiniz. sqlnet.ora dosyasında (genellikle $ORACLE_HOME/network/admin/ içinde bulunur) aşağıdaki parametreleri arayın:

Parametre Kalın modun gerekli olduğunu gösterir
SQLNET.CRYPTO_CHECKSUM_CLIENT Yerel ağ şifrelemesi için REQUIRED veya REQUESTED olarak ayarlayın
SQLNET.ENCRYPTION_CLIENT Yerel ağ şifrelemesi için REQUIRED veya REQUESTED olarak ayarlayın

Microsoft Foundry kimlik doğrulaması

Microsoft Foundry için aşağıdaki kimlik doğrulama yöntemlerinden birini yapılandırın:

Kimlik doğrulama yöntemi Requirements
API anahtarı Microsoft Foundry uç noktası URL'si ve API anahtarı.
Microsoft Entra ID Azure Hesap uzantısında oturum açıldı, Foundry User rolü (eski adıyla Azure AI User) Microsoft Foundry kaynağına atanmış.

Geçiş süreci

Bu bölümde geçiş iş akışının tamamı gösterilmektedir. PostgreSQL uzantısını yüklersiniz, Oracle kaynağınıza ve PostgreSQL için Azure Veri Tabanı hedefinize bağlantılar oluşturur ve bunları test edersiniz, bir geçiş projesi açar ve ilklendirirsiniz, şema dönüştürme için Microsoft Foundry'yi yapılandırırsınız, şemaları keşfetmek ve dönüştürmek için Geçiş Sihirbazı'nı çalıştırırsınız, dönüştürülen nesneleri geçici bir veritabanında doğrularsınız ve oluşturulan PostgreSQL yapıtlarını hedefinize uygulamadan önce işaretlenen öğeleri gözden geçirir veya düzeltirsiniz.

1. Adım: PostgreSQL Visual Studio Code uzantısını yükleme

  1. Visual Studio Code'u açın.

  2. Uzantılar görünümüne (Ctrl+Shift+X) gidin.

  3. PostgreSQL için arama yapın ve Microsoft tarafından yayımlanan < PostgreSQL uzantısını yükleyin.

    1. Pazaryeri indirmesi

    postgreSQL uzantısını Visual Studio Code yükleme işleminin ekran görüntüsü.

2. Adım: PostgreSQL için Azure Veri Tabanı bağlantısı oluşturma

  1. PostgreSQL uzantısı panelinde PostgreSQL için Azure Veri Tabanı esnek sunucunuza örneğine bir bağlantı oluşturun.

  2. Bağlantı ayrıntılarını (konak, veritabanı, kullanıcı adı, parola) girin.

  3. Bağlantıyı test edin ve kaydedin.

    Yeni PostgreSQL için Azure Veri Tabanı bağlantısı ekleme ekran görüntüsü.

3. Adım: Yeni çalışma alanı açma

  1. Geçiş projesi için yerel makinenizde yeni bir klasör oluşturun.

  2. klasörü Visual Studio Code yeni çalışma alanı olarak açın.

    Visual Studio Code'da yeni çalışma alanı ekleme ekran görüntüsü.

4. Adım: Geçiş projelerini başlatma

  1. PostgreSQL uzantısını açın.

  2. Geçişler paneline gidin.

  3. Geçiş Projesi Oluştur seçeneğini belirleyin.

    Yeni geçiş projesi oluşturma işleminin ekran görüntüsü.

5. Adım: Proje ayarlarını yapılandırma

  1. Geçiş Sihirbazı'ndaprojenizin adını girin.

  2. Devam etmek için İleri'yi seçin.

    Proje adının ekran görüntüsü.

6. Adım: Oracle bağlantısını yapılandırma

  1. Oracle bağlantı ayrıntılarınızı girin:

    • Ana bilgisayar veya sunucu adı.
    • Port numarası.
    • Veritabanı veya hizmet adı.
    • Kullanıcı adı ve parola.

    Araç, ince istemci veya kalın istemci modunu sqlnet.ora ve tnsnames.ora ayarlarınızdan otomatik olarak seçer; kullanıcı arayüzünde manuel bir seçici sunulmaz. İnce mod varsayılan olarak kullanılır. sqlnet.ora kalın mod gerektiriyorsa, devam etmeden önce Oracle Instant Client'ın yüklü olduğundan ve konumunun PATH ortam değişkeninde yer aldığından emin olun. Daha fazla bilgi için bkz. Oracle Instant Client.

  2. Şemaları Yükle'yi seçin. Araç Oracle bağlantısını test eder ve başarılı olursa Oracle'da kullanılabilen tüm kullanıcı tanımlı şemaları listeler.

  3. PostgreSQL'e dönüştürmek için bir veya daha fazla şema seçin.

  4. Devam etmek için İleri'yi seçin.

    Oracle sunucusunu yapılandırma işleminin ekran görüntüsü.

7. Adım: PostgreSQL için Azure Veri Tabanı için geçici bir veritabanı yapılandırın

  1. PostgreSQL uzantısında tanımladığınız PostgreSQL için Azure Veri Tabanı bağlantısını seçin.

  2. Açılan listeden hedef veritabanını seçin.

  3. Devam etmek için İleri'yi seçin.

    Geçici veritabanının yapılandırılmasının ekran görüntüsü.

8. Adım: Microsoft Dökümhane dil modelini yapılandırma

  1. Microsoft Foundry bilgilerinizi girin:

    • Uç nokta URL'si.
    • Dağıtım adı (Microsoft Foundry'de dağıtıma atadığınız ad; temel alınan model gpt-5.2) olmalıdır.
  2. Kimlik doğrulama yöntemini seçin:

    • API anahtarı: Microsoft Dökümhane dağıtımınız için API anahtarını girin.
    • Microsoft Entra Id: Azure Hesabı uzantısıyla oturum açın. Araç kimlik doğrulama belirtecini otomatik olarak alır. Microsoft Foundry kaynağında oturum açan kimliğin Foundry User rolüne (eski adıyla Azure AI User) sahip olduğundan emin olun. Daha fazla bilgi için bkz. Microsoft Foundry için rol tabanlı erişim denetimi.
  3. Yapılandırmayı doğrulamak için Bağlantıyı Sına'yı seçin.

  4. Bağlantı başarılı olduktan sonra Geçiş Projesi Oluştur'u seçin.

    Dil modeli yapılandırmasının ekran görüntüsü.

9. Adım: Şema dönüştürmeyi çalıştırma

  1. Sistem, ana Geçiş Sihirbazı'na yönlendirilir.

  2. Şema dönüştürme işlemini başlatmak için Geçir'i seçin.

  3. Visual Studio Code arabiriminde dönüştürme ilerleme durumunu izleyin.

    Geçiş adımı ilerleme durumunun ekran görüntüsü.

10. Adım: Şema dönüştürme raporunu gözden geçirme

  1. Şema dönüştürme tamamlandıktan sonra araç bir şema dönüştürme raporu oluşturur.
  2. Başarıyla dönüştürülen nesneleri ve atlanan nesneleri gözden geçirin.
  3. Raporda dönüştürmenin başarı yüzdesi görüntülenir.

11. Adım: Dönüştürme görevlerini gözden geçirme ve iyileştirme

  1. Şema dönüştürme tamamlandıktan sonra araç, dikkat gerektiren nesneler için gözden geçirme görevleri oluşturur.
  2. Görevleri çözmek için GitHub Copilot aracısı modunu kullanın veya şemaları el ile PostgreSQL'e dönüştürün.
  3. Önceki ve yeni dönüştürülen şema dönüştürme deyimlerini karşılaştırın.
  4. Görev öncelikleri, oluşturulan SQL dosyaları ve çıktı klasörleri hakkında daha fazla bilgi için bkz. Esnek sunucu şeması dönüştürmeyi PostgreSQL için Azure Veri Tabanı için Oracle için görevleri ve çıktı klasörlerini gözden geçirme.

12. Adım: Dönüştürülen nesneleri dağıtımdan önce doğrulama

  1. Üretim dışı bir ortamda dönüştürülen tüm nesneleri bağımsız olarak doğrulayın.
  2. Bağımlılıkların, kısıtlamaların ve temsili iş yüklerinin beklendiği gibi davrandığını onaylayın.
  3. Tüm gözden geçirme görevleri için çözümleri gözden geçirin ve değişikliklerden sonra yeniden test edin.

Important

Müşteri doğrulama sorumluluğu: Şema dönüştürme için kullanılan yapay zeka altyapısı, doğrulama ve gözden geçirme konusunda da yardımcı olabilir. Yapay zeka sistemleri zaman zaman kendi hatalarını doğrulayabilir. Veri kaybını, işlevsel regresyonları veya güvenlik sorunlarını önlemek için, üretime dağıtmadan önce tüm dönüştürülen nesneleri ve gözden geçirme görevi çözümlemelerini bağımsız olarak doğrulayın. Denetimlerinizin bir parçası olarak, zararlı veya istenmeyen çıkışları azaltmaya yardımcı olmak için Microsoft Foundry içerik filtrelemesini etkinleştirmeyi göz önünde bulundurun. Yönergeler için bkz. Microsoft Foundry Modelleri için İçerik Filtreleme.

Visual Studio Code uzantısı hakkında daha fazla bilgi için Visual Studio Code ve İmleç için PostgreSQL uzantısı'nı ziyaret edin.