Oracle veritabanımız içerisinde yer alan tabloları rahatlıkla MS SQL server’ımıza aktarabiliriz. Bu işlem için Microsoft’un güzel bir aracı bulunmaktadır: Migration Assistant for Oracle. Bu aracı aşağıdaki bağlantıdan indirebilirsiniz.
http://www.microsoft.com/en-us/download/details.aspx?id=42655
Bağlantıda yer alan SSMA for Oracle ile SSMA for Oracle Ext.Pack araçlarından her ikisini de indirmeniz gerekmektedir.
Bu araç sayesinde “Oracle 9.07.3” ve ilerisi tüm Oracle veritabanlarından (Express Edition dahil) SQL Server 2005, 2008, 2008 R2, 2012 ve 2014 e veri taşıyabilirsiniz.
Her iki aracı da MS SQL Server’ımıza indiriyoruz.
SSMA for Oracle aracının kurulumu ile başlıyoruz.
“Typical” seçeneğini seçerek devam ediyoruz.
Tüm diğer adımları varsayılan olarak geçip kurulumu tamamlıyoruz.
Sıra diğer aracımıza geliyor. SSMA for Oracle Extension Pack aracını da MS SQL Server’ımıza kuruyoruz.
Oracle client yüklü olmadığı için bir uyarı vermektedir. Oracle client yazılımı ile birçok ekstra uygulamayı da yapabilirsiniz fakat bizim için şu aşamada zorunlu değildir. Kuruluma oracle client ı çekmeden devam ediyoruz.
MS SQL server’ımızı seçiyoruz.
Bağlantı ayarlarına geçiyoruz.
Bir parola giriyoruz.
Araçların kurulumu ile devam ediyoruz.
Kurulum başlamaktadır.
Kısa bir süre sonra masa üstüne “Microsoft SQL server Migration Assistance for Oracle” aracının kısa yolu gelmektedir.
Aracımızı çalıştırıyoruz.
File seçeneğine yeni bir taşıma projesi için “New Project” seçeneğini seçiyoruz.
Projemize bir isim veriyoruz. Ayrıca taşıma işlemi için kullanacağımız MS SQL server sürümünü seçiyoruz.
Öncelikle MS SQL server’ımıza bağlanıyoruz. “Connect to SQL Server” seçeneğini seçiyoruz.
SQL Server bağlantı ekranı çıkmaktadır. 2014 yazması sizi yanıltmasın tüm sürümlere bu ara yüz ile bağlanabilirsiniz. Ms SQL server’ımızda yer alan bir veri tabanını seçiyoruz. (boş bir veri tabanını daha önce yaratabiliriz)
Taşıma aracında MS SQL Server bağlantımız ve server içerisinde yer alan veri tabanları görüntülenmektedir.
Sırada Oracle veritabanına bağlanmak var. “Connect to Oracle” seçeneğini ile başlıyoruz.
Bağlantı için gerekli olan bilgileri giriyoruz. Uzak sunucu olduğu için Oracle veritabanın çalıştığı sunucunun IP adresini “server name” bölümüne giriyoruz.
Oracle için varsayılan bağlantı portu 1521 dir.
SID olarak ben Oracle Express edition (11) kullandığımdan dolayı “XE” girdim. Express Edition dışındaki sürümler için “ORCL” olabilir.
Kullanıcı adı ve parolası için oracle veri tabanımızda yetkili bir kullanıcı hesabı girmemiz gerekmektedir. Ben kendi adıma bir kullanıcı yarattım. Bu kullanıcıya CREATE SESSION, UNLIMITED TABLESPACE, CREATE TABLE, CREATE ANY TABLE, SELECT ANY TABLE, CREATE ANY SEQUENCE, SELECT ANY SEQUENCE, CREATE ANY PROCEDURE, CREATE ANY TRIGGER ve CREATE ANY TYPE yetkilerini verdim. Eksik bir yetki verirseniz migration aracı sizi gerekli izinler için uyaracaktır.
Yeni bağlantımız migration aracı içerisinde yer almaktadır.
“Schemas” bölümünde kendi şemamı ve taşımak istediğim tabloyu görmekteyim. Tablomun sütunlarını da kontrol ediyorum.
Şemamızın altındaki tüm kutuları seçiyoruz ve sağ tıklayıp “convert Schema” seçeneği ile taşıma işlemini başlatıyoruz.
Bir süre sonra (taşımak istediğimiz verinin büyüklüğüne bağlı olarak) Oracle şema ismi ile aynı isimde bir veri tabanı MS SQL Server bağlantımızda belirecektir. Tablomuzu da buradan görebiliriz.
Son aşama olarak bu veritabını çalışan MS SQL Server’ımız ile seknronize etmemiz gerekmektedir.
Veritabanının üzerine sağ tıklayıp “Sychronize with database” seçeneğini seçiyoruz.
Açılan pencereden yapılacak işlemi görebiliriz. “Ok” seçeneği ile işlemi başlatıyoruz.
Başarılı bir şekilde Oracle veritabanından verilerimizi MS SQL Server’a aktarmış bulunmaktayız.
Bu makalede bana yardımcı olan Java uzmanı Erkin Pehlivan dostuma teşekkürler.
Çok güzel bir yazı eline sağlık, çalışmalarının devamını bekliyorum .