Oracle Real Application Cluster (RAC) Veritabanını 11g R2′den 12c R1′e Yükseltme İşlemi

Oracle12cBu makalemizde “Oracle Real Application Cluster (RAC) Veritabanını 11g R2′den 12c R1′e Yükseltme İşlemi”ni inceleyeceğiz. Yükseltme işlemini Oracle 11g R2 (11.2.0.3.0)’den Oracle 12c R1 (12.1.0.1.0)’e yapacağız. Veritabanımızı Oracle 12c yükseltme işlemi yapabilmek için versiyonlarımızın aşağıdaki gibi olması gerekmektedir. Aksi takdirde yükseltme işlemi mümkün olmayacaktır.

Oracle 10g R2’den Oracle 12c R1’e yükseltme işlemi için Oracle 10g R2 10.2.0.5 versiyonu veya üzeri,

Oracle 11g R1’den Oracle 12c R1’e yükseltme işlemi için Oracle 11g R1 11.1.0.7 versiyonu veya üzeri,

Oracle 11g R2’den Oracle 12c R1’e yükseltme işlemi için Oracle 11g R2 11.2.0.2 versiyonu veya üzeri olması gerekmektedir. Eğer veritabanı versiyonlarımız bu şekilde değilse önce bu versiyonlara yükseltme işlemi yapmalı daha sonra Oracle 12c R1’e yükseltme işlemi gerçekleştirmeliyiz.

Mevcut veritabanımız “Oracle Enterprise Linux İşletim Sisteminde Oracle Real Application Cluster (Rac) 11g R2 Veritabanı Kurulumu” yazımızda anlatıldığı adımlarla yapılmıştır.

Yükseltme işlemi öncesi sunucumuz internete çıkıyorsa öncelikle işletim sistemi güncellememizi yapabiliriz. Eğer internete çıkmıyorsa veya herhangi bir güncelleme yapmayacaksak bu adımı atlayabiliriz. Bu işlem zorunlu bir Oracle gereksinimi değildir.  Ağ ortamımızda bir “proxy” sunucu aracılığı ile internete çıkılıyorsa “Linux İşletim Sistemlerinde Yum Repository için Proxy Yapılandırması” ve “Oracle Enterprise Linux İşletim Sistemlerinde Public Yum Repository Yapılandırması” yazılarımızı inceleyebilirsiniz. Ayrıca aşağıdaki paketlerinde kurulu olduğundan emin olmalıyız.

-- İşletim sistemimizi güncellemek için aşağıdaki komutu çalıştırabiliriz.

# yum -y update

-- Oracle 12c versiyonumuz için öngereksinim paketimizi kuruyoruz.

# yum -y install oracle-rdbms-server-12cR1-preinstall

A-) Grid Infrastracture Yükseltme İşlemi

1. Yükseltme işlemi öncesi Cluster servisimizin sağlıklı bir şekilde ayakta olması gerekmektedir. Kontrol için aşağıdaki adımları uyguluyoruz.

-- Servisimizin durumunu görmek için her iki üyede aşağıdaki komutu çalıştırmalıyız.
-- OFFLINE olanlar kullanılmayan servislerdir. (GNS)

-- Her iki üyede aşağıdaki komutu çalıştırıyoruz.

# crs_stat -t

Name           Type           Target    State     Host        
------------------------------------------------------------
ora.DATA.dg    ora....up.type ONLINE    ONLINE    kryrac1     
ora.FRA.dg     ora....up.type ONLINE    ONLINE    kryrac1     
ora....ER.lsnr ora....er.type ONLINE    ONLINE    kryrac1     
ora....N1.lsnr ora....er.type ONLINE    ONLINE    kryrac2     
ora....N2.lsnr ora....er.type ONLINE    ONLINE    kryrac1     
ora....N3.lsnr ora....er.type ONLINE    ONLINE    kryrac1     
ora.asm        ora.asm.type   ONLINE    ONLINE    kryrac1     
ora.cvu        ora.cvu.type   ONLINE    ONLINE    kryrac1     
ora.gsd        ora.gsd.type   OFFLINE   OFFLINE               
ora....SM1.asm application    ONLINE    ONLINE    kryrac1     
ora....C1.lsnr application    ONLINE    ONLINE    kryrac1     
ora....ac1.gsd application    OFFLINE   OFFLINE               
ora....ac1.ons application    ONLINE    ONLINE    kryrac1     
ora....ac1.vip ora....t1.type ONLINE    ONLINE    kryrac1     
ora....SM2.asm application    ONLINE    ONLINE    kryrac2     
ora....C2.lsnr application    ONLINE    ONLINE    kryrac2     
ora....ac2.gsd application    OFFLINE   OFFLINE               
ora....ac2.ons application    ONLINE    ONLINE    kryrac2     
ora....ac2.vip ora....t1.type ONLINE    ONLINE    kryrac2     
ora....network ora....rk.type ONLINE    ONLINE    kryrac1     
ora.oc4j       ora.oc4j.type  ONLINE    ONLINE    kryrac1     
ora.ons        ora.ons.type   ONLINE    ONLINE    kryrac1     
ora.rac.db     ora....se.type ONLINE    ONLINE    kryrac1     
ora.scan1.vip  ora....ip.type ONLINE    ONLINE    kryrac2     
ora.scan2.vip  ora....ip.type ONLINE    ONLINE    kryrac1     
ora.scan3.vip  ora....ip.type ONLINE    ONLINE    kryrac1

-- Eğer servisimiz ayakta değilse aşağıdaki komut ile başlatabiliriz.
-- Her iki üyede aşağıdaki komutu çalıştırıyoruz.

# crsctl start crs

2. Dikkatli bir şekilde yeni kuracağımız “Grid” ve “Database” yazılımları için gerekli dizinlerimizi oluşturuyoruz. Oracle 11g R2 (11.2.0.2.0) sonrasında yükseltme (upgrade) işlemleri için ayrı dizine kurma özelliği geldi. Bu özellik sayesinde mevcut dizinlere dokunmadan ayrı bir dizine kurulum yapılabilir ve sonrasında eski dizinler kaldırılabilir. Yazımızda bu adımları uygulayacağız.

-- Yeni "Grid" ve "Database" kurulumu için dizinlerimizi oluşturuyoruz.

-- Bu işlemi her iki üyede yapıyoruz.

# mkdir -p /u01/app/12.1.0.1.0/grid
# mkdir -p /u01/app/oracle/product/12.1.0.1.0/db
# chown -R oracle:oinstall /u01/app/12.1.0.1.0/grid
# chown -R oracle:oinstall /u01/app/oracle/product/12.1.0.1.0/db
# chmod -R 775 /u01/app/12.1.0.1.0/grid
# chmod -R 775 /u01/app/oracle/product/12.1.0.1.0/db

-- Kurulum dosyalarımızı koymak için dizinimizi oluşturuyoruz.

-- Bu işlemi sadece 1. üyede yapmamız yeterlidir.

# mkdir -p /u01/orainstall
# chown -R oracle:oinstall /u01/orainstall
# chmod -R 775 /u01/orainstall

3. Kuruluma geçebilmemiz için ftp yada başka bir yöntem ile “grid” ve “database” kurulum dosyalarımızı oluşturduğumuz “/u01/orainstall/” dizini altına atıyoruz. Eğer sunucumuzda ftp server özelliği aktif edilmemişse “Linux İşletim Sistemlerinde FTP Server Yapılandırması” makalemizden faydalanarak gerekli ayarları yapabiliriz. Kurulum tek bir üye üzerinden her iki üyeyede yapılacağından kurulum dosyalarını bir üye üzerine koymanız yeterli olacaktır.

-- Kurulum için dosyalarımızı kontrol ediyoruz.

$ cd /u01/orainstall/
$ ls
V38500-01_1of2.zip  V38500-01_2of2.zip  V38501-01_1of2.zip  V38501-01_2of2.zip

-- Dosyalarımız üzerinde gerekli izinleri veriyoruz.

$ cd /u01/orainstall/
$ chmod 777 *

-- Sıkıştırılmış dosyalarımızı açıyoruz.

$ unzip V38500-01_1of2.zip
$ unzip V38500-01_2of2.zip
$ unzip V38501-01_1of2.zip
$ unzip V38501-01_2of2.zip

-- Ayıklama işlemi tamamlandığında yer kaplamaması için istersek .zip dosyalarını
temizleyebiliriz.

$ rm -f V3850*

-- Dosyalarımız açıldığında "grid" ve "database" kurulum dosyalarımız oluşuyor.

$ ls
database  grid

4. Kurulum öncesi herhangi bir sorun çıkmaması için sunucularımızın birbirleriyle “oracle” kullanıcısı ile SSH üzerinden şifresiz konuşabildiğini kontrol ediyoruz.

-- 1. Üyeden 2. Üyeye bağlantı kuruyoruz.

$ ssh kryrac2
Last login: Thu Jun 27 23:07:03 2013 from kryrac1.localdomain

$ exit

-- 2. Üyeden 1. Üyeye bağlantı kuruyoruz.

$ ssh kryrac1
Last login: Thu Jun 27 23:07:13 2013 from kryrac2.localdomain

$ exit

5. Kurulum sunucu üzerinde değilde uzaktan kendi bilgisayarmızda yapılacaksa ekranı export edebiliriz. Bunun için “Xmanager” vb. emülatör yazılımları kullanılabilir. Bu yazılımı bilgisayarımıza kurduğumuzda “Xmanager – Passive” programını çalıştırmalıyız. Görev çubuğunda yazılım çalışacak ve export ettiğimiz ekranı kendi bilgisayarımızdan yönetebileceğiz. Bununla beraber “VNC Server” aracılığı ile de sunucuya bağlanabilir ve kurulumu direk sunucu üzerinden yapabiliriz. Bunun için “Linux İşletim Sistemlerinde VNC Server Yapılandırması” makalemizden yararlanabilirsiniz. Önerilen eğer işletim sistemimizde masaüstü yazılımı (KDE, Gnome vb) varsa kurulumu VNC Server veya sunucu üzerinden yapmanız çünkü kurulum aşamasında network vb. kesintisinde kurulumunuz yarım kalabilir.

-- Öncelikle Xmanager vb. Emülatör programını bilgisayarımızda çalıştırmalıyız.
Ardından aşağıdaki komut ile görüntüyü export etmeliyiz. Aşağıdaki işlemi "oracle"
kullanıcı ile yapıyoruz.

$ DISPLAY=<machine-name>:0.0; export DISPLAY

Örnek;

$ DISPLAY=192.168.2.83:0.0; export DISPLAY

Test için;

$ xclock

-- Yazdığımızda ekranımızda bir saat yazılımının çalıştığını görmeliyiz.
Eğer açılmıyorsa ayarlarda bir sorun var demektir. Firewall vb. ayarlarımızı
kontrol etmeliyiz.

6. Grid Infrastracture yazılımımızı “11g R2″den “12c R1″e yükseltme işlemine başlıyoruz.

-- Oracle kullanıcısı ile sistemimize bağlıyken

$ cd /u01/orainstall/grid/
$ ./runInstaller

OelRac11gto12c_1

7. Açılan karşılama ekranında güncellemeler için bizden “Oracle Support MOS” hesabını istiyor bu adımı “Skip software updates” seçeneğini seçerek “Next” düğmesine tıklıyoruz.

OelRac11gto12c_2

8. Mevcut “Grid” yazılımımızı yükselteceğimiz için “Upgrade Oracle Grid Infrastructure or Oracle Automatic Storage Management” seçeneği işaretliyken “Next” düğmesine tıklıyoruz.

OelRac11gto12c_3

9. Dil seçeneğimizi varsayılan olarak “English” olarak seçili bırakıyoruz ve “Next” düğmesine tıklıyoruz.

OelRac11gto12c_4

10. Yüksetme işleminin uygulanacağı “Cluster” ortamına dahil sunucularımız otomatik geliyor. Karşımıza çıkan bilgilerde herhangi bir sorun yoksa “Next” düğmesine tıklıyoruz.

OelRac11gto12c_5

11. Kurulum sihirbazımız SSH bağlantımızı kontrol ederken bekliyor herhangi bir sorun çıkmazsa bir sonraki adıma otomatik geçecektir.

OelRac11gto12c_6

12. Grid Infrastructure repository seçeneğini şimdi yapılandıracağımız için “Yes” seçeneğini seçiliyken “Next” düğmesine tıklıyoruz. Oracle 12c ile gelen bu özellikte istenilirse veritabanı yükseltme işleminde de  yapılandırılabilir.

OelRac11gto12c_7

13. Kurulumların ve yönetimin hangi işletim sistemi grupları ile yapılacağını soruyor burada “oinstall” veya “dba” grupları seçilerek kurulum yapılabilir. Tek olması düşüncesiyle “dba” olarak seçiyoruz ve “Next” düğmesine tıklıyoruz.

OelRac11gto12c_8

14. Kurulum sihirbazı bu seçimlerinde standart dışı olduğunu söylüyor burada verdiği uyarıya ekranına ”Yes” düğmesini tıklayarak devam ediyoruz.

OelRac11gto12c_9

15. Oracle grid kurulumunun yapılacağı dizinleri seçiyoruz. Dizinleri aşağıdaki ekran görüntüsündeki gibi seçiyoruz ve daha önce yarattığımız dizinlere kurulumun yapılmasını sağlıyoruz. Bu dizinleri daha önceki aşamalarımızda oluşturmuş gerekli hakları vermiştik.

OelRac11gto12c_10

16. Aynı dizinlerin diğer üyemizde de olup olmadığı kontrol ediliyor.

OelRac11gto12c_11

17. Oracle 12c ile gelen yeni özelliklerden biride Grid kurulumunda “root” kullanıcısı ile çalıştırdığımız scriptleri otomatik çalıştırmasını ayarlayabiliyoruz. Bu aşamadan “root” kullanıcımızın parolasını girerek kurulum sonuna doğru scriptlerin otomatik çalışmasını sağlayabiliriz. Gerekli ayarları yaptıktan sonra “Next” düğmesine tıklıyoruz.

OelRac11gto12c_12

18. Sunucularımızda çalışacak batch dosyalarını bu aşamada görebiliyoruz. Birinci üyede 1 ikinci üyede 3 batch dosyamız mevcuttur. “Next” düğmesine tıklıyoruz ve işlemimize devam ediyoruz.

OelRac11gto12c_13

19. Kurulum sihirbazı sunucularımızı kontrol ederek öngereksimin olarak bir eksiklik olup olmadığıyla ilgili kontrolleri yapıyor.

OelRac11gto12c_14

20. Kurulumumuzda herhangi bir sorun yoksa öngereksinimlerin tamamı uygunsa kurulum için özet bilgi ekranı karşımıza gelecektir. Kuruluma başlamak için “Install” düğmesini tıklıyoruz. Herhangi bir sorun varsa oradaki maddeleri inceliyoruz ve kritiklik durumuna göre gidermeye çalışıyoruz. “Warning” konular ignore edilebilir ancak başka bir uyarı varsa onu gidererek kuruluma devam etmek sorunsuz kurulum açısından önemlidir. Aksi takdirde kurulum işlemi belli bir aşamaya geldiğinde hata verebilir.

OelRac11gto12c_15

21. Kurulum aşamalarını aşağıdaki ekrandan takip edebiliriz.

OelRac11gto12c_16

22. Kurulum sonuna doğru bizden “root” kullanıcısı ile çalıştıracağımız scriptler için bizden onay istiyor. Bunun için önceki adımda “root” kullanıcısının parolasını girerek yapılandırmıştık. Bu aşamada “Yes” düğmesine tıklayarak kuruluma devam ediyoruz. Scriptleri elle çalıştıracaksak ”root” kullanıcısı ile açılmış bir terminal penceresinden çalıştırmalıyız. Scriptleri çalıştırdığımızda aşağıdaki gibi çıktılar oluşacaktır. Scriptleri önce 1. üyede burada bittikten sonra 2. üyede çalıştıracağız. Aynı anda çalıştırdığımızda kurulumumuz hata verebilir. Gerekli script’leri çalıştırdıktan sonra “OK” düğmesine tıklayarak devam ediyoruz.

OelRac11gto12c_17

23. Kurulum işleminin kalan aşması devam ediyor. Bu işlemler tamamlanana kadar bekliyoruz.

OelRac11gto12c_18

24. Kurulum başarılı bir şekilde tamamlandıktan sonra “Close” düğmesine basarak kurulumu bitiriyoruz.

OelRac11gto12c_19

“Grid Infrastracture” yükseltme İşlemimiz tamamlandı. Şimdi “Database” yükseltme işlemine geçiyoruz.

B-) Database Yükseltme İşlemi

25. Veritabanı (Database) yazılımımızı “11g R2″den “12c R1″e yükseltme işlemine başlıyoruz.

-- Oracle kullanıcısı ile sistemimize bağlıyken

$ cd /u01/orainstall/database/

$ ./runInstaller

26. Bizden Oracle Support (MOS) hesabımızın e-posta adresimizi ve parolamızı istiyor. Bu adımda kutucuktaki işareti kaldırıyoruz ve “Next” düğmesine tıklıyoruz.

OelRac11gto12c_20

27. Oracle Support (MOS) Kullanıcı adı ve Parolasını girmediğimiz için bizi uyarıyor “Yes” düğmesine tıklayarak kuruluma devam ediyoruz.

OelRac11gto12c_21

28. My Oracle Support aracılığı ile otomatik olarak güncelleme indirme ayarını yapmamızı istiyor bu adımda “Skip software updates” seçeneğini seçerek “Next” düğmesine tıklıyoruz.

OelRac11gto12c_22

29. Kurulum seçeneklerimizden yükseltme işlemi yapacağımız için “Upgrade an existing Database” seçeneğini seçiyoruz ve “Next” düğmesine tıklıyoruz.

OelRac11gto12c_23

30. Bu ekranda bir cluster ortamı kuracağımızdan “Oracle Real Application Cluster database installation” seçeneğini seçip kümeye üye yapacağımız sunucularımızı işaretliyoruz.

OelRac11gto12c_24OelRac11gto12c_25

31. Kurulum sihirbazımız SSH bağlantımızı kontrol ederken bekliyor herhangi bir sorun çıkmazsa bir sonraki adıma otomatik geçecektir.

OelRac11gto12c_26

32. Veritabanımızın kurulumunda varsayılan olarak “English” seçeneğini seçili bırakıyoruz ve “Next” düğmesine tıklayarak devam ediyoruz.

OelRac11gto12c_27

33. Lisans seçeneğimize göre kurulum yapacağımız opsiyonu seçiyoruz. Bu kurulumda “Enterprise Edition” seçeneğini seçiyoruz ve “Next” düğmesine tıklıyoruz.

OelRac11gto12c_28

34. Oracle Veritabanı yazılımını kuracağımız dizinleri aşağıdaki gibi yazıp ardından “Next” düğmesini tıklıyoruz. Bu dizinleri daha önceki kurulum aşamalarımızda oluşturmuş gerekli hakları vermiştik.

OelRac11gto12c_29

35. Aynı dizinlerin diğer üyemizde de olup olmadığı kontrol ediliyor.

OelRac11gto12c_30

36. Veritabanı kurulumu ve yönetimi için işletim sistemi gruplarını seçiyoruz. Özel bir yetki yapılandırmamız yoksa aşağıda görüldüğü gibi “dba” grupları atayarak “Next” düğmesine tıklıyoruz.

OelRac11gto12c_31

37. Kurulum sihirbazı Veritabanı kurulumumuz için sistemimizin uygunluğunu kurulum öncesi denetleyecektir. Eğer bir sorun varsa bizi uyaracak ve bu sorun giderildikten sonra kuruluma devam etmemizi tavsiye edecektir. Bizim sistemimizde herhangi bir eksik olmadığı için otomatik olarak diğer adıma geçecektir.

OelRac11gto12c_32

38. Kurulum özet ekranı çıktıktan sonra “Install” düğmesine tıklayarak kurulumu başlatıyoruz.

OelRac11gto12c_33

39. Kurulum sihirbazı kurulum aşamalarını bize adım adım gösterecektir. Bu işlemler tamamlanana kadar bekliyoruz.

OelRac11gto12c_34

40. Kurulumun sonuna doğru daha önce olduğu gibi bizden bir scriptin “root” kullanıcısı ile çalıştırılmasını isteyecektir. “root” kullanıcısı ile açılmış bir terminal ekranında aşağıdaki gibi komutları çalıştırıyoruz.

OelRac11gto12c_35

# /u01/app/oracle/product/12.1.0.1.0/db/root.sh
Performing root user operation for Oracle 12c 

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/12.1.0.1.0/db

Enter the full pathname of the local bin directory: [/usr/local/bin]: 
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.

41. Kurulum işleminin kalan aşması devam ediyor. Bu işlemler tamamlanana kadar bekliyoruz.

OelRac11gto12c_36

42. Kurulum işlemi tamamlandığında ikinci bir pencerede “Database Upgrade Assistant” aracı açılacaktır. Açılan “DBUA” aracımızda “Upgrade Oracle Database” seçeneği işaretliyken “Next” düğmesine tıklıyoruz.

OelRac11gto12c_37

43. Yükseltme işleminin yapılacağı veritabanlarımızı, kaynak dizin ve hedef dizinlerimizi seçiyoruz. Buradaki seçimlerimizi çok dikkatli yapmalıyız. Gerekli ayarlarımızı yaptıktan sonra “Next” düğmesine tıklıyoruz.

OelRac11gto12c_38

44. Kurulum için gerekli denetimler yapılırken bekliyoruz.

OelRac11gto12c_39OelRac11gto12c_40

45. Kurulum gereksiminlerimiz tamamlandı sadece “Enterprise Manager Repository” mevcut olduğu ve bunun kaldırılacağı ve yenisinin kurulacağı ile ilgili uyarı alıyoruz. Kuruluma devam etmek için “Next” düğmesine tıklıyoruz.

OelRac11gto12c_41

46. Yükseltme seçeneklerimizi belirliyoruz. Bu aşamada yükseltme işleminin kaç paralellikle yapılacağı, yükseltme işlemi sonrası “Invalid Objects”lerin kaç paralellikle yeniden derleneceği, vb. seçeneklerimizi yapılandırıyoruz. “Time Zone” kolay kolay değişmez ancak Upgrade işlemi sonrası istatistik toplanması önemlidir. Burada veri boyutumuz büyükse upgrade işlemimiz oldukça uzayacaktır. Tüm veritabanımızın ne kadar zamanda istatistik topladığını göz önünde bulundurarak tercih yapmamız isabetli olacaktır. Ayrıca yükseltme işlemi süresinde “User tablespace”si “Read Only” tutmakta fayda olacaktır. Bu sayede yükseltme işlemi sırasında bir kullancı veya servis bağlanıp bir değişiklik yapamayacak ve sorun çıkmasını engeleyecektir. Gerekli seçimleri yaptıktan sonra “Custom SQL Script” sekmesine tıklıyoruz.

OelRac11gto12c_42

47. “Custom SQL Script” sekmemizde yükseltme işlemi öncesi ve sonrasında çalıştırmasını istediğimiz özel scriptlerimiz varsa bunları belirliyoruz. Gerekli işlemleri yaptıktan sonra kuruluma devam etmek için “Next” düğmesine tıklıyoruz.

OelRac11gto12c_43

48. Veritabanımızın web arayüzünden yönetimi için gerekli olan “Enterprise Manager” konsolunu kuracaksak “Configure Enterprise Manager” seçeneğini işaretliyoruz veya ortamımızda “Enterprise Manager 12c” gibi yönetim aracımız varsa bu aşamadan onunda kurulumunu sağlayabiliriz.

OelRac11gto12c_44

49. Veritabanımızın yükseltme işlemi öncesinde yedeğini almak için aşağıdaki ekranı kullanabiliriz. Burada upgrade işleminde bir problem olması durumunda “recover” işlemini yapacağı bir “RMAN” backup’ı gereklidir. Eğer geri dönme işlemi için kendi yöntemimiz varsa “I have my own backup and restore strategy” seçeneğini işaretliyoruz ve “Next” düğmesine tıklıyoruz.

OelRac11gto12c_45

50. Yapmış olduğumuz tercihlerle ilgili özet bilgi ekranı çıkıyor burada gerekli incelememiz bittikten sonra “Finish” düğmesine tıklayarak veritabanı yükseltme işlemimizi başlatıyoruz.

OelRac11gto12c_46

51. Veritabanı yükseltme işleminin aşamalarını aşağıdaki bilgi ekranından takip ediyoruz. Bu işlem seçmiş olduğumuz seçenekler ve sunucumuzun özelliklerine göre biraz zaman alabilir.

OelRac11gto12c_47

52. Kurulum işlemimiz başarıyla tamamlandı. Kurulum ekranımızı kapatmak için “Upgrade Results” düğmesine tıklıyoruz.

OelRac11gto12c_48

53. Yükseltme işlemimizin sonuçlarını “Upgrade Results”  bilgi ekranında inceleyebiliriz. burada gerekli incelememiz bittikten sonra “Close” düğmesine tıklayarak veritabanı yükseltme işlemimizi bitiriyoruz.

OelRac11gto12c_49OelRac11gto12c_50

54. Yükseltme işlemimizin son aşaması olarak eski (11g R2) “Oracle Home” dizinlerimizi kaldırmamız gerekmektedir. Ayrıca “bash_profile” dosyalarımızda yeni “Oracle Home” dizinine göre ayarlamaları yapmalıyız. Bunun için aşağıdaki adımları uyguluyoruz.

-- Oracle 12c DeInstall Aracı ile bu işlemi yapabiliriz.

-- Eski "Oracle Home" dizinlerimizi kaldırıyoruz.

# chown -R oracle /u01/app/11.2.0.3
# chown -R oracle /u01/app/oracle/product/11.2.0.3
# chmod -R 775 /u01/app/11.2.0.3
# chmod -R 775 /u01/app/oracle/product/11.2.0.3
# su - oracle

-- Eski "Grid Home" Kaldırma

$ cd /u01/orainstall/grid/
$ ./runInstaller -deinstall -home /u01/app/11.2.0.3/grid

-- Eski "Database Home" Kaldırma

$ cd /u01/orainstall/database/
$ ./runInstaller -deinstall -home /u01/app/oracle/product/11.2.0.3/db

$ su - root
# rm -rf /u01/app/11.2.0.3
# rm -rf /u01/app/oracle/product/11.2.0.3

-- bash_profile dosyalarımızı düzenliyoruz.

-- Her iki üyede root kullanıcısının ".bash_profile" dosyasını düzenliyoruz.

# vim .bash_profile

ORACLE_HOME=/u01/app/12.1.0.1.0/grid; export ORACLE_HOME
PATH=$PATH:$HOME/bin:$PATH:$ORACLE_HOME/OPatch:$PATH:$ORACLE_HOME/bin export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib export LD_LIBRARY_PATH

-- Üye'1 de bulunan .bash_profile dosyasına aşağıdakileri yazıyoruz.

# vim /home/oracle/.bash_profile

# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_HOSTNAME=kryrac1.localdomain; export ORACLE_HOSTNAME
ORACLE_UNQNAME=rac; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
GRID_HOME=/u01/app/12.1.0.1.0/grid; export GRID_HOME
DB_HOME=$ORACLE_BASE/product/12.1.0.1.0/db; export DB_HOME
ORACLE_HOME=$DB_HOME; export ORACLE_HOME
ORACLE_SID=rac1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
BASE_PATH=/usr/sbin:$PATH; export BASE_PATH
PATH=$ORACLE_HOME/bin:$PATH:$ORACLE_HOME/OPatch:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi

alias grid='. /home/oracle/.grid'
alias db='. /home/oracle/.db'

-- Üye 2'de bulunan .bash_profile dosyasına aşağıdakileri yazıyoruz.

# vim /home/oracle/.bash_profile

# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_HOSTNAME=kryrac2.localdomain; export ORACLE_HOSTNAME
ORACLE_UNQNAME=rac; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
GRID_HOME=/u01/app/12.1.0.1.0/grid; export GRID_HOME
DB_HOME=$ORACLE_BASE/product/12.1.0.1.0/db; export DB_HOME
ORACLE_HOME=$DB_HOME; export ORACLE_HOME
ORACLE_SID=rac2; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
BASE_PATH=/usr/sbin:$PATH; export BASE_PATH
PATH=$ORACLE_HOME/bin:$PATH:$ORACLE_HOME/OPatch:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi

alias grid='. /home/oracle/.grid'
alias db='. /home/oracle/.db'

55. Veritbanımız 11g R2’den 12c R1’e yükseltilmiş ve hazır durumdadır. Eğer istersek web arayüzlü yönetim konsolu olan “Enterprise Manager” a bağlanıp veritabanı ayar ve monitör işlemlerimizi yapabiliriz.

-- Enterprise Manager konsolumuza erişebiliriz.

https://kryrac1.localdomain:5500/em/ adresinden

-- Artık veritabanımıza oturum açabilir istediğimiz işlemleri yapabiliriz.

$ sqlplus / as sysdba 

SQL*Plus: Release 12.1.0.1.0 Production on Thu Jun 27 15:18:43 2013

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management,
OLAP,
Advanced Analytics and Real Application Testing options

SQL> select inst_name FROM v$active_instances;

INST_NAME
------------------------------------------------------------
kryrac1.localdomain:rac1
kryrac2.localdomain:rac2

-- RAC veritabanının ve küme servislerin sağlıklı çalışıp çalışmadığının
kontrolünü yapmak için "oracle kullanıcısıyla aşağıdaki komutları çalıştırabiliriz.

$ srvctl config database -d RAC
Database unique name: rac
Database name: rac
Oracle home: /u01/app/oracle/product/12.1.0.1.0/db
Oracle user: oracle
Spfile: +DATA/rac/spfilerac.ora
Password file: +DATA/rac/orapwrac
Domain: 
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: rac
Database instances: rac1,rac2
Disk Groups: DATA,FRA
Mount point paths: 
Services: 
Type: RAC
Start concurrency: 
Stop concurrency: 
Database is administrator managed

$ srvctl status database -d RAC

Instance rac1 is running on node kryrac1
Instance rac2 is running on node kryrac2

-- Grid ile ilgili komutlarımızı kullanacağımızda bu değişkenleri kullanmak için

$ cd
$ . .grid

-- Database ile ilgili komutlarımızı kullanacağımızda bu değişkenleri kullanmak için

$ cd
$ . .db

-- "Root" kullanıcısı ile Cluster Servislerimizi kontrol edelim.

# cd
# . .bash_profile

# crs_stat -t

Name           Type           Target    State     Host        
------------------------------------------------------------
ora.DATA.dg    ora....up.type ONLINE    ONLINE    kryrac1     
ora.FRA.dg     ora....up.type ONLINE    ONLINE    kryrac1     
ora....ER.lsnr ora....er.type ONLINE    ONLINE    kryrac1     
ora....N1.lsnr ora....er.type ONLINE    ONLINE    kryrac2     
ora....N2.lsnr ora....er.type ONLINE    ONLINE    kryrac1     
ora....N3.lsnr ora....er.type ONLINE    ONLINE    kryrac1     
ora.MGMTLSNR   ora....nr.type ONLINE    ONLINE    kryrac1     
ora.asm        ora.asm.type   ONLINE    ONLINE    kryrac1     
ora.cvu        ora.cvu.type   ONLINE    ONLINE    kryrac1     
ora....SM1.asm application    ONLINE    ONLINE    kryrac1     
ora....C1.lsnr application    ONLINE    ONLINE    kryrac1     
ora....ac1.ons application    ONLINE    ONLINE    kryrac1     
ora....ac1.vip ora....t1.type ONLINE    ONLINE    kryrac1     
ora....SM2.asm application    ONLINE    ONLINE    kryrac2     
ora....C2.lsnr application    ONLINE    ONLINE    kryrac2     
ora....ac2.ons application    ONLINE    ONLINE    kryrac2     
ora....ac2.vip ora....t1.type ONLINE    ONLINE    kryrac2     
ora.mgmtdb     ora....db.type ONLINE    ONLINE    kryrac1     
ora....network ora....rk.type ONLINE    ONLINE    kryrac1     
ora.oc4j       ora.oc4j.type  ONLINE    ONLINE    kryrac1     
ora.ons        ora.ons.type   ONLINE    ONLINE    kryrac1     
ora.rac.db     ora....se.type ONLINE    ONLINE    kryrac1     
ora.scan1.vip  ora....ip.type ONLINE    ONLINE    kryrac2     
ora.scan2.vip  ora....ip.type ONLINE    ONLINE    kryrac1     
ora.scan3.vip  ora....ip.type ONLINE    ONLINE    kryrac1

OelRac11gto12c_51OelRac11gto12c_52

56. Oracle Real Application Cluster (RAC) sisteminde sunucumuz açıldığında “cluster” ve ”database” servislerimiz otomatik olarak başlamaktadır. Sunucumuzu kapatmak istediğimizde bu servislerimizi durdurup sistemi kapatabiliriz. Aşağıdaki komutlarla kapattığımızda sunucumuz açıldığında otomatik yeniden başlayacaktır.

-- Cluster ve Veritabanı Servislerimizi Durdurma

-- Aşağıdaki işlemleri "root" kullanıcısı ile yapıyoruz.

# crsctl stop has

-- Bu komut her iki üyede çalıştırılacaktır. Bu komut sonrası sistemimizi 
kapatıp açtığımızda otomatik açılacaktır. Bu işlem sonrası sistemimize
"reboot" veya "shutdown" komutu verilebilir.

-- Cluster ve Veritabanı Servislerimizi sunucumuzu yeniden başlatmadan açmak
için aşağıdaki komutu kullanıyoruz.

# crsctl start has

Bu makalemizde Oracle Enterprise Linux 6.4 64 Bit üzerine çalışan Oracle Real Application Cluster Database 11g R2 (11.2.0.3.0)’den Oracle Real Application Cluster Database 12c R1 (12.1.0.1.0)’e yükseltme (upgrade) işlemini inceledik.

Bir sonraki makalemizde görüşmek dileğiyle…

Bu yazı Oracle kategorisine gönderilmiş ve , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ile etiketlenmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.