Instalacja Oracle 12 na serwerze Linux

Dziś zainstalujemy bazę Oracle 12 na serwerze OracleLinux7.

Na początek musimy stworzyć z root’a usera ORACLE i dodać go do odpowiednich grup.

groupadd oracle
useradd -g oracle -m -d /home/oracle Oracle
passwd oracle

Następnie musimy skopiować na serwer do katalogu domowego usera ORACLE pliki instalacyjne Oracla (np /home/oracle) :

linuxamd64_12102_database_1of2.zip
linuxamd64_12102_database_2of2.zip

jeśli nie ma instalujemy program do ich rozpakowania

yum install unzip.x86_64

Podczas instalacji instalator sprawdzi nam brakujące biblioteki jednak w tym przykładzie zainstalujemy je wczesniej przed instalacją:

yum install libXtst.x86_64
yum install compat-libcap1-1.10
yum install compat-libstdc++-33
yum install libstdc++-devel
yum install sysstat-10.1.5
yum install gcc
yum install gcc-c++
yum install ksh
yum install glibc-devel
yum install libaio-devel

Instalujemy biblioteki potrzebne do graficznego uruchomienia instalatora:

yum install xauth
yum install xorg-x11-apps.x86_64

Po rozpakowaniu plików instalacyjnych przechodzimy do folderu DATABASE i uruchamiamy program runInstaller:

./runInstaller

Rozpoczyna się instalacja instancji bazy Oracle.


Ekran powitalny 🙂

Pomjamy to naciskając NEXT

Zaznaczamy aby zainstalował tylko binaria. Po instalacji uruchomimy tworzenie baz.

Jako że będziemy mieli tylko jedną instancję na naszym serwerze wybieramy pierwszą opcję.

Tu nic nie zmieniamy. Zostawiamy tylko język angielski.

Wybieramy wersję instalowanej bazy (w naszym przypadku to Enterprise)

Te ścieżki gdzie ma być instalowane binarki również pozostawiamy niezmienione.

Folder dla OraInventory również pozostawiamy niezmieniony

Konfiguracja grup w Oraclu. Nie zmieniamy

Lista parametrów do zmiany w Linuxie. naciskamy przycisk FIX & CHECK AGAIN który spowoduje naprawę wyświetlonych problemów.

Pojawia się skrypt który należy uruchomić z poziomu root’a.

[root@localhost ~]# /tmp/CVU_12.1.0.2.0_oracle/runfixup.sh

All Fix-up operations were completed successfully.

Po jego wykonaniu naciskamy OK

Następuje ponowne sprawdzenie. Zostają jakieś drobne rzeczy które można pominąć. Zaznaczamy opcję IGNORE ALL i wciskamy NEXT

Ostrzeżenie że będziemy pomijać ostrzeżenia 🙂

Krótkie podsumowanie przed uruchomieniem instalacji

Rusza instalacja

Pojawiają się dwa skrypty które ponownie trzeba uruchomić z poziomy user ROOT.

[root@localhost ~]# /home/oracle/app/oraInventory/orainstRoot.sh

Changing permissions of /home/oracle/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /home/oracle/app/oraInventory to oracle.
The execution of the script is complete.

[root@localhost ~]# /home/oracle/app/oracle/product/12.1.0/dbhome_1/root.sh

Performing root user operation.

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /home/oracle/app/oracle/product/12.1.0/dbhome_1

Enter the full pathname of the local bin directory: [/usr/local/bin]: 
                                /home/oracle/app/oracle/product/12.1.0/dbhome_1/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.


Creating /etc/oratab file...
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.

Po ich wykonaniu wciskamy OK

Zakończenie instalacji.

Następnie uruchamiamy Database Configuration Assistant’a w celu utworzenia bazy danych w naszej instancji.


Ekran powitalny 🙂

Wybieramy opcję CREATE DATABASE (tworzenie nowej bazy)

Wpisujemy tu nazwę bazy (baza), ustawienia regionalne (ważna sprawa) oraz wpisujemy hasło na konta SYS i SYSTEM za pomocą których będziemy podłączali się do bazy. Odznaczamy opcję „Create As Container Database”

Małe ostrzeżenie na temat naszego zbyt prostego hasła 🙂

Podsumowanie przed tworzeniem bazy

Rusza tworzenie bazy

Baza została stworzona.

Teraz możemy przystąpić do końcowej konfiguracji serwera.

Aby za każdym razem nie ustawiać zmiennych dotyczących bazy ORACLE wpiszemy je w plik startowy .bash_profile
Dopisujemy do pliku:

ORACLE_SID=baza
ORACLE_BASE=/home/oracle/app/oracle
ORACLE_HOME=/home/oracle/app/oracle/product/12.1.0/dbhome_1
export ORACLE_SID ORACLE_BASE ORACLE_HOME
PATH=$ORACLE_HOME/bin:$PATH
export PATH

Po wylogowaniu się i ponownym zalogowaniu zmianne powinny być ustawione;

[oracle@localhost ~]$ env | grep ORA

ORACLE_SID=baza
ORACLE_BASE=/home/oracle/app/oracle
ORACLE_HOME=/home/oracle/app/oracle/product/12.1.0/dbhome_1

Możemy spokojnie logować się do bazy

Nim jednak to zrobimy musimy uruchomić nasłuch (listenera)

lsnrctl start

Starting /home/oracle/app/oracle/product/12.1.0/dbhome_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 12.1.0.2.0 - Production
Log messages written to /home/oracle/app/oracle/diag/tnslsnr/localhost/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 12.1.0.2.0 - Production
Start Date                29-MAR-2017 22:41:33
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Log File         /home/oracle/app/oracle/diag/tnslsnr/localhost/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))
The listener supports no services
The command completed successfully

[oracle@localhost ~]$ ps -ef | grep tns

root        15     2  0 21:22 ?        00:00:00 [netns]
oracle    2732     1  0 22:41 ?        00:00:00 /home/oracle/app/oracle/product/12.1.0/dbhome_1/bin/tnslsnr LISTENER -inherit
oracle    2856  2340  0 22:44 pts/0    00:00:00 grep --color=auto tns

Za jego pomocą będziemy mogli podłączać się z zewnątrz do bazy Oracle.

Teraz możemy się logować „lokalnie” do bazy

[oracle@localhost ~]$ sqlplus "/as sysdba"

SQL*Plus: Release 12.1.0.2.0 Production on Wed Mar 29 22:40:03 2017

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

Connected to an idle instance.

Baza nie jest uruchomiona wiec musimy ją wystartować

SQL> startup

ORACLE instance started.

Total System Global Area  608174080 bytes
Fixed Size                  2927288 bytes
Variable Size             486540616 bytes
Database Buffers          113246208 bytes
Redo Buffers                5459968 bytes
Database mounted.
Database opened.

Baza działa i jest gotowa do pracy. Możemy się od niej odłączyć

SQL> exit

Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

Ten wpis został opublikowany w kategorii Oracle i oznaczony tagami . Dodaj zakładkę do bezpośredniego odnośnika.

Dodaj komentarz