Oracle 12C


Contents

Rendszerkövetelmények

A telepítés megkezdésének a pillanatában minimum 12 Giga szabad hely kell legyen. Ezen felül a swap hely tényleg legyen a duplája a memóriának, de minimum 4 giga. Ezeket ellenőrizni fogja a telepítő, de csak a telepítés vége felé, és nem fog tovább engedni.

A telepítéshez lengethetetlen sajnos az X rendszer, csak parancssorosan nem lehet feltelepíteni. Tehát a szerverre átmenetileg fel kell rakni az X rendszert is (sad)

Felhasznált források: 

http://www.tecmint.com/oracle-12c-installation-in-centos-6/ http://www.tecmint.com/setting-up-prerequisites-for-oracle-12c-installation/ http://www.tecmint.com/oracle-database-11g-release-2-installation-in-linux/

Deploying Oracle Database 12c on Red Hat Enterprise Linux 6

Előkészületek

SELinux

WarningIcon.png

Warning
Az összes fellelhető HOWTO úgy indul, hogy kapcsoljuk ki az SELinux-ot és a tűzfalat. Ez vicc, nehogy kikapcsoljuk bármelyiket is. A SELinux a 3.7.19-211 policy verziótól kezdve támogatja az Oracle 11.2.0.3-as adatbázisokat vagy annál újabbakat. (Ez a policy a 6.5-ös RedHat -ben lett bevezetve)


CentOS 6.8-at használunk, ahol a SELinux policy verziója 3.7.19.292, tehát megfelel a követelményeknek, nem kell kikapcsolni az SE linuxot.

# cat /etc/redhat-release 
CentOS release 6.8 (Final)
# yum info selinux*
...
Name        : selinux-policy
Arch        : noarch
Version     : 3.7.19
Release     : 292.el6
Size        : 9.0 M
Repo        : installed
...
Name        : selinux-policy-targeted
Arch        : noarch
Version     : 3.7.19
Release     : 292.el6
Size        : 3.5 M
Repo        : installed

Látható hogy a SELinux be van kapcsolva:

# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 24
Policy from config file:        targeted

Iptables

Az iptables kikapcsolásának a szorgalmazását végkép nem értem, mert 3 portot kell kinyitni összesen. Semmilyen speciális modulra, állapot figyelési szabályra, kernel újrafordításra nincs szükség, az alap IPtables funkcionalitást kell használni. Nézzük meg a jelenlegi tűzfal beállításokat, amik a minimum installációs csomaggal érkeznek:

[root@adamcentos ~]# service iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination 
1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 
2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 
4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 
5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
num target prot opt source destination 
1 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination

Láthatjuk, hogy csak a 22-es port van beengedve, minden mást elutasít "host prohibited" üzenettel. Kifelé bármi mehet.


Készítsünk egy iptables scriptet (itt letölthető) ugyan ebben a szellemben, ahol fölvesszük az INPUT láncra a következő portokat is:

1521: itt lehet az adatbázishoz csatlakozni, amit létrehozunk 5500: Az adatbázis kezelő webes felületét érhetjük itt el.

 
#!/bin/bash 
IPTABLES=/sbin/iptables 
MODPROBE=/sbin/modprobe 
$IPTABLES -P INPUT DROP 
$IPTABLES -P FORWARD DROP 
$IPTABLES -P OUTPUT DROP 
# minda három tábla összes szabályát törölöjük 
$IPTABLES -t filter -F 
$IPTABLES -t nat -F 
$IPTABLES -t mangle -F 
# a localhost-on engedjük a kommunikációt 
$IPTABLES -A INPUT -i lo -j ACCEPT 
# befelé is engedjük a már felépült kapcsolatokat. 
$IPTABLES -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
# kifelé mindent kiengedünk
$IPTABLES -A OUTPUT -j ACCEPT 

# beengedjük az ssh-t
$IPTABLES -A INPUT -m state --state NEW -p tcp -m tcp --dport 22 -j ACCEPT
# beengedjük a db kapcsolatot
$IPTABLES -A INPUT -m state --state NEW -p tcp -m tcp --dport 1521 -j ACCEPT
#beengedjük a db webes felületét
$IPTABLES -A INPUT -m state --state NEW -p tcp -m tcp --dport 5500 -j ACCEPT
#minden mást eldobunk. 
$IPTABLES -A INPUT -j REJECT --reject-with icmp-host-prohibited
$IPTABLES -A FORWARD -j REJECT --reject-with icmp-host-prohibited


Futtassuk le a scriptet, majd mentsük el az iptables beállításokat:

# ./iptables.sh
 
# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]


Jáva telepítése

A telepítő JAVA-s! Töltsük le a 8-as jdk-t: jdk-8u101-linux-x64.tar.gz

Tömörítsük ki ide : /usr/java/jdk1.8.0_101

Majd adjuk hozzá az alternatívákhoz:

# update-alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_101/bin/java 200

Ellenőrizzük a java verziót:

# java -version
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
</prey

==Hálózati beállítások==
Fontos hogy fix IP címe legyen a gépnek. 

A host nevet fel kell venni a hosts fájlba is domainel és domain nélkül is. Nálam a host név: adamCentos6.intra, a host fájlban ez van: 
<pre>
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 adamCentoes6.intra adamCentoes6
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

182.168.122.10 adamCentoes6.intra


A host nevet a /etc/sysconfig/network fájlban kell beállítani:

NETWORKING=yes
HOSTNAME=adamCentoes6.intra


Függőségek telepítése

Elsőként frissítsük az alaprendszert, hogy a legújabb csomagokat használjuk:

# yum clean metadata && sudo yum upgrade


Egy két segédprogram, ami kelleni fog:

# yum install unzip wget man


Majd jöhetnek az adatbázis függőségei. Az oracle biztosít a RedHat alapú rendszerekhez egy repository-t, amivel rengeteg Oracle termék függőségét fel lehet telepíteni yum-al. Még a szükséges user és group-ot is létrehozza. Tegyük fel a repository-t és a hozzá tartozó kulcsot:

# cd /etc/yum.repos.d
# wget --no-check-certificate https://public-yum.oracle.com/public-yum-ol6.repo
# wget --no-check-certificate https://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6 -O /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle


Ha belenézünk a repo fájlba, láthatjuk, hogy legalább 50 csomagot tartalmaz.

Telepítsük föl a 12-es Oracle adatbázis függőségeit:

# yum install oracle-rdbms-server-12*


Felhasználók létrehozása

A szükséges csomagok telepítésén felül létrehozott két csoportot is oracle-rdbms-server-12 telepítő:

oinstall, id: 54321  --> ezen csoport nevében lesz installálva a szoftver. Az installációval kapcsolatos fájok a /u01/app/oraInventory fájl alatt az oinstall csoport tulajdonában lesznek. 
dba, id: 54322 --> ezen csoport nevében fog futni az adatbázis kezelő. 


Elöljáróban így fog kinézni a tulajdon szerkezet az installáció után:

[root@myproject app]# ls -l /u01/app/
total 8
drwxrwxr-x. 10 oracle dba 4096 Aug 23 12:33 oracle
drwxrwx---. 5 oracle oinstall 4096 Aug 23 12:32 oraInventory


És létrehozta az oracle felhasználót, akinek a fő csoportja az oinstall csoport, ezen felül tagja még a dba csoportnak is. Az oracle felhasználó nevében fog futni a telepítő és az adatbázis kezelő is.

# cat /etc/group | grep -E 'oracle|oinstall'
oinstall:x:54321:
dba:x:54322:oracle

# cat /etc/passwd | grep 'oracle'
oracle:x:54321:54321::/home/oracle:/bin/bash
 
# id -Gn oracle 
oinstall dba

# groupmems -g dba -l
oracle


Adjuk hozzá a superuserek-hez az oracle felhasználót, erre szükség lesz a telepítés végrehajtásához, valamit hozzunk létre jelszót hozzá, hogy be tudjunk vele lépni.

# usermod -a -G wheel oracle
# passwd oracle
.....


Ha már volt korábban installálva oracle termék a gépen, akkor az /etc/oraInst.loc fájl alapján határozza meg a telepítő, hogy melyik csoport nevében fusson. Ez okozhat kellemetlenséget. Ha nincs jelen még ez a fájl, akkor a futtató felhasználó fő csoportja lesz a mérvadó!




Környezeti változók beállítása

Az összes adatbázissal kapcsolatos műveletet az oracle felhasználóval kell majd létrehozni. Hogy erre alkalmas legyen a felhasználó a .bash_profile fájljába be kell írni az oracle adatbázis környezeti váltóit. (ez a script lefut minden egyes belépéskor). Az itt szereplő mappákat lentebb hozzuk majd létre, egyenlőre még nem léteznek.

/home/oracle/.bash_profile végére az alábbiakat írjuk:

## Oracle Env Settings 
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_HOSTNAME=adamcentos.intra
export ORACLE_UNQNAME=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1
export ORACLE_SID=orcl
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib


A /u01/app/oracle/product/12.1.0/db_1 lesz a most felinstallálandó Oracle 12C adatbázis kezelő példányának a home könyvtára. Tehát a db_1 nem azt jelenti, hogy ez az első adatbázisunk saját könyvtára. Ebbe a mappába az adatbázis kezelő szoftver binárisai kerülnek. Az adatbázisokat tartalmazó fájlok a /u01/app/oracle/oradata mappában vannak. Konvenció, hogy az oracle termékek a /u01/app/oracle/product/ mappa struktúrán belül helyezkednek el. Ezt követi az adatbázis kezelő verzió száma, esetünkben a 12.1.0, majd konvenció szerint ezt követ az installáció számozott almappája, általában db_X, esetünkben ez db_1. Ha még egy független Orcalce 12C-t fel akarnánk installálni, akkor az a db_2, .. .mappákba kerülne.

Tehát ha a most létrehozott oracle felhasználó kifejezetten a jelenlegi Oracle 12C példányhoz készült, annak az alap beállításait rakja rá környezeti váltókra. Ha más verzió is fel lenne telepítve, vagy egy másik példány is telepítés kerülne az Oracle 12C-ből, akkor annak saját felhasználót kéne létrehozni.


Limitek beállítása

Elsőként át kell állítani a nproc limitet (number of processes), ami azt szabályozza, hogy egy felhasználó hány process-t futtathat egyszerre. Ennek az értékét jóval meg kell emelni 16384-re minden felhasználó számára. Tehát a root feletti sor nézzen ki így:

# mcedit /etc/security/limits.d/90-nproc.conf
*    -    nproc 16384
root soft nproc unlimited


Ezen felül egy éles környezetben futó adatbázis kezelőben fel kell emelni a fájlokra és szoketekre vonatkozó limiteket is, ezt én a teszt adatbázison nem állítottam be. A fájl végére tegyük be az alábbiakat:

# mcedit /etc/security/limits.conf
és az oracle user számára ezeket kéne megadni, de én nem tettem: 
oracle soft nofile 1024 
oracle hard nofile 65536 
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768

Szükséges mappák létrehozása

Hozzuk létre az adatbázis kezelő mappa struktúráját, és adjuk a dba csoport és az oracle felhasználó tulajdonába az alábbi jogosultságokkal.

# mkdir -p /u01/app/oracle/product/12.1.0/db_1
# chown -R oracle:dba /u01
# sudo chmod -R 775 /u01
A  /u01/app/oracle/product/12.1.0/db_1 mappába tartalmazza az adatbázis kezelő szoftver installációját. Ha több különböző verziót is feltennénk, akkor azok itt különböző almappákba kerülnének. A db_1 nevében az 1-esnek semmi jelentősége, elvileg ugyan abból a verzióból lehetne több példányt is feltelepíteni, de azt meg végkép nem fogjuk megtenni. Tehát a db_1 nem az 1. adatbázisunk tároló mappája, csak a szoftver installációs HOME mappája. 

Az adatbázisok adatfájljai a /u01/app/oracle/oradata mappába kerülnek majd. Itt minden adatbázisnak a SID nevével létrejön egy szülő mappa, ahova az adatok kerülnek


X szerver beállítása

Fontos, hogy az SSH szerver beállításaiban engedélyezni kell az X továbbítását:

[root@myproject ssh]# cat /etc/ssh/sshd_config 
.....
X11Forwarding yes
.....


A telepítést csak grafikus felületen keresztül tudjuk elvégezni. Ezért az X-et fel kell átmenetileg rakni a szerver gépre, amihez X továbbítással fogunk SSH-val csatlakozni.

# yum install xorg-x11-xauth xterm xorg-x11-server-utils


Root-ként futtassuk le az alábbi parancsot. Ezzel megegedjük az összes host-rol az X -es csatlakozást.

# xhost +
access control disabled, clients can connect from any host


Ezután be kell egyszer ssh-zni -X -el a root-hoz, hogy létrehozza a ~/.Xauthority fájlt:

ssh -l root -X 192.168.122.10


Most még csak a root-nak van ~/.Xauthority fájlja. Viszont a telepítéshez az oracle user-t kell használni. Ha su-zunk a root-ból az oracle-be akkor nem fog létrejönni a fájl. Ehhez az ssh kapcsolatot az oracle userrel kell indítani, és létre fogja hozni első belépéskor a fájlt:

# ssh -X -l oracle 192.168.122.10


Telepítés

töltsük le a 12c-t, ez két zip file (figyeljünk a CPU architektúrára):

linuxamd64_12102_database_1of2.zip
linuxamd64_12102_database_2of2.zip


Tömörítsük ki és adjuk az oracle user tulajdonába:

# su -l oracle 
$ unzip linuxamd64_12c_database_1of2.zip
$ unzip linuxamd64_12c_database_2of2.zip


Lépjünk be az oracle user-el SSH-val, az X forwarding bekapcsolásával:

# ssh -X -l oracle 192.168.122.10
$ cd /home/oracle/install/database


Indítsuk el az installációt:

$ ./runInstaller
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 500 MB. Actual 2462 MB Passed
Checking swap space: must be greater than 150 MB. Actual 1322 MB Passed
Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2016-08-19_12-30-44PM. Please wait ...
---> és itt indul el a telepítő grafikusan


A grafikus telepítőn az alábbi lépéseket válasszuk:

 Installation options: Create and configure database
system class: Server class
Grid installation options: Single instance database installation
Install type: advanced isntall --> így a wizard további részében több mindendöl választhatunk
Installation location: 
sofware base: /u01/app/oracle
sofware location: /u01/app/oracle/product/12.1.0/db_1 

Ezeket hoztunk létre korábban, és adtuk meg az oracle .bash_profile fájlban mint az adatbázis kezelő home könyvtára. Ezen belül hozza létre az adatbázisokat.

Create inventor: 
inventory directory: /u01/app/oraInventory 

ide kerülnek a meta data fájlok, pl log fájlok.


Orainventory group name: oinstall
Configuration type: General purpose.
Database identification: 
global database name: orcl
oracle system identifier (SID): orcl
create as a container database: NO
Configuration options: Enable automatic memory management
Database storage: 
File system: YES
Specifiy database file location: /u01/app/oracle/oradata
Schema password: (ez lesz a SYSTEM user jelszava)
use the same password for every account: (SYS, SYSTEM, DBSNMP) 

ezzel a jelszóval tudunk majd belépni a webes adatbázis karbantartó felületre is. (Liteon999)


Operating syste groups: Meg kell adni olyan group-ot, akinek sudo joga van. Az összeshez dba-t állítsunk be Majd next, next, install


Az install setup fázisában fel fog jönni egy popup ablak, ahol kérni fogja, hogy root-ként futtassunk le két megadott scriptet. Ezt tegyük meg:

# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /u01/app/oraInventory to oracle.
The execution of the script is complete.

Majd a második script. Itt rá fog kérdezni, hogy hol van az adott rendszeren a bin directory. CentOS 6-oson itt ivan: /usr/bin


# /u01/app/oracle/product/12.1.0/db_1/root.sh
Performing root user operation.
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/12.1.0/db_1

Enter the full pathname of the local bin directory: [/usr/local/bin]: /usr/bin

Copying dbhome to /usr/bin ...
Copying oraenv to /usr/bin ...
Copying coraenv to /usr/bin ...
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.

Ezután végig fut a telepítő, és a végén feljön egy összefoglaló képernyő:


Összegzés:

telepítő log fájl: /u01/app/oracle/cfgtoollogs/dbca/orcl Global database name: orcl SID: orcl Service parameter file name: /u01/app/oracle/product/12.1.0/db_1/dbs/spfileorcl.ora EM Database Express URL: https://adamcentos.intra:5500/em

Post installáció

Az oratab fájl

Ahhoz hogy be tudjunk lépni az új adatbázisunkra két további lépésre van szükségünk.

Ha távolról (tehát nem localhost) is el akarjuk érni az adatbázis kezelőt, akkor szükségünk van egy adatbázis listener-re. Ez egy külön hálózati szoftver komponens, amit külön el kell indítani reboot után. El kell indítani a feltelepített adatbázis kezelőnket is, vagyis az Orcacle 12C terméket.


A /u01/app/oracle/product/12.1.0/db_1/bin/dbstart segédprogram mind két műveletet elvégzi. Azt hogy milyen adatbázist indítson el a meghívásakor az /etc/oratab fájlból olvassa ki.

Telepítés közben a telepítő hozzáadta az adatbázis kezelőnk új installációjának a sorát az /etc/oratab fájlhoz:

# cat /etc/oratab
 
orcl:/u01/app/oracle/product/12.1.0/db_1:N


A dbstart segédprogram akkor indít el egy adatbázis kezelő példányt, ha a kettőspont után Y szerepel, különben figyelmen kívül hagyja. Tehát írjuk át az N-t Y-ra:

# cat /etc/oratab
 
orcl:/u01/app/oracle/product/12.1.0/db_1:Y


Ha ezt megtettük, indítsuk újra a gépet, hogy garantáltan semmilyen adatbázis komponens ne fusson, mielőtt tovább haladnánk a telepítéssel.


Listener és adatbázis kezelő indítása

Fontos fájlok

Az adatbázis elérése szempontjából két fontos fájlt kell szemügyre vegyünk. Mindkettő a /u01/app/oracle/product/12.1.0/db_1/network/admin mappában található.

listener.ora: Ez a fájl tartalmazza a listener konfigurációját, ami lehetővé teszi hogy távolról is elérjük az adatbázis kezelőt

# listener.ora Network Configuration File: /u01/app/oracle/product/12.1.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = myproject.mycompany.hu)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

Tartalmazza a portot: 1521 valamint a host nevet, amin el lehet majd érni az adatbázis kezelőt.


tnsnames.ora: A kliensek számára készült leíró, ami azt mondja meg, hogy az adott service névvel rendelkező adatbázis kezelő milyen url-en és porton érhető el. Itt be van állítva, hogy az orcl nevű szolgáltatás a myproject.mycompany.hu:1521 -n érhető el.

# tnsnames.ora Network Configuration File: /u01/app/oracle/product/12.1.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = myproject.mycompany.hu)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )


Kézi indítás

Lépjünk be az oracle felhasználóval, hogy a .bath_profile-ban lévő beállítások érvényre kerüljenek.

[root@myproject admin]# su -l oracle
[oracle@myproject ~]$ 

Ekkor a /u01/app/oracle/product/12.1.0/db_1/bin/ tartalma rákerült a PATH-ra, ami az adatbázis kezelő segédprogramjait tartalmazza.


Ha nem az oracle felhasználó nevében végezzük a következő lépéseket, akkor semmi sem fog megfelelően működni, mivel hiányozni fognak az adatbázis kezelő beállításai.


Elsőként kérdezzük le a listener állapotát:

$ lsnrctl status
 
LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 19-AUG-2016 18:50:29
Copyright (c) 1991, 2014, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=adamcentos.intra)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
Láthatjuk, hogy jelenleg nem fut a listener, így nem fogad távoli kéréseket. 


Indítsuk el:

$ lsnrctl start 

LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 19-AUG-2016 18:52:33
Copyright (c) 1991, 2014, Oracle. All rights reserved.
Starting /u01/app/oracle/product/12.1.0/db_1/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 12.1.0.2.0 - Production
System parameter file is /u01/app/oracle/product/12.1.0/db_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/diag/tnslsnr/adamcentos/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=adamcentos.intra)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 12.1.0.2.0 - Production
Start Date 19-AUG-2016 18:52:35
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/12.1.0/db_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/adamcentos/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
The listener supports no services
The command completed successfully

Harmadik lépésként az SQLPlus programmal (ami szintén az oracle bin mappában van, ami most már rajta van a PATH-on) el fogjuk indítani az adatbázis kezelőt:

Indítsuk el az SQLPlus-t, és lépjünk be a telepítés közben létrehozott sysdba felhasználóval

$ sqlplus / as sysdba
SQL*Plus: Release 12.1.0.2.0 Production on Fri Aug 19 18:56:31 2016
Copyright (c) 1982, 2014, Oracle. All rights reserved.
Connected to an idle instance.
SQL>
TipIcon.png

Tip
Ne feledjük el, hogy még mindig az oracle felhasználó nevében vagyunk belépve, aminek a .bash_profile betöltésekor a jelenlegi adatbázis installáció paraméterei bekerültek környezeti változókba.


És most jöhet az adatbázis kezelő indítása a SARTUP paranccsal. A startup parancs az /u01/app/oracle/product/12.1.0/db_1/dbs/init.ora fájl alapján tudja, hogy mit kell elindítani. Az adatbázis kezelő home könyvtára rajta van a PATH-on, így találja meg az init.ora fájlt.

SQL> STARTUP
ORACLE instance started.
Total System Global Area 973078528 bytes
Fixed Size 2931472 bytes
Variable Size 662701296 bytes
Database Buffers 301989888 bytes
Redo Buffers 5455872 bytes
Database mounted.
Database opened.

Csatlakozás az adatbázishoz

Webes adminisztrációs felület (Oracle Enterprise Manager Database Console)

Miután a listener és az adatbázis kezelő példányt is elindítottuk, lépjünk be az adatbázis kezelő webes adminisztrációs felületére, ami az 5500 porton érhető el alapértelmezettem.

https://myproject:5500/em/login

Loginhez a telepítés közben létrehozott SYSTEM felhasználót kell használni az akkor létrehozott jelszóval:

User:SYSTEM Pass:Liteon999

TipIcon.png

Tip
Az 5500 portot át lehet írni az emca (Enterprise Manager Configuration Assistant) segédprogram segítségével, ami szintén a oracle home/bin mappában található:

$ emca -DBCONTROL_HTTP_PORT 5500


ClipCapIt-160923-181239.PNG


A konzolon szolgáltatásai: Tablespace -ek definiálása, szerkesztése:

ClipCapIt-160923-181302.PNG


Role-ok definiálása:

:ClipCapIt-160923-181312.PNG


Sémák (felhasználók definiálása)

ClipCapIt-160923-181326.PNG



Sqldeveloper

Hozzunk létre egy adatbázis kapcsolatot a SYSTEM adminisztrációs felhasználóval, amivel további sémákat tudunk majd létrehozni. Adjunk piros színt az adatbázis kapcsolatnak, jelezve, hogy ez a kiemelt kapcsolat:

username: SYSTEM password: Liteon999 Connection type: Basik Role: default hostname: 192.168.10.100 Port: 1521 SID: orcl

ClipCapIt-160923-181358.PNG


ClipCapIt-160923-181408.PNG

CentOS/RedHat service készítése

Az adatbázis indításához és leállításához a

/u01/app/oracle/product/12.1.0/db_1/bin/dbstart és dbshut parancsokat fogjuk használni. Minden olyan adatbázist el fog indítani, amit a /etc/oratab-ba Y-al talál.

Csináljuk meg az /etc/init.d/dbora fájlt:

#! /bin/sh -x
#
# chkconfig: 2345 80 05
# description: start and stop Oracle Database Enterprise Edition on Oracle Linux 5 and 6
#
# In /etc/oratab, change the autostart field from N to Y for any
# databases that you want autostarted.
#
# Create this file as /etc/init.d/dbora and execute:
#  chmod 750 /etc/init.d/dbora
#  chkconfig --add dbora
#  chkconfig dbora on
# Note: Change the value of ORACLE_HOME to specify the correct Oracle home
# directory for your installation.
# ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1
ORACLE_HOME=/u01/app/oracle/product/12.1.0/db_1
#
# Note: Change the value of ORACLE to the login name of the oracle owner
ORACLE=oracle
PATH=${PATH}:$ORACLE_HOME/bin
HOST=`hostname`
PLATFORM=`uname`
export ORACLE_HOME PATH
case $1 in
'start')
	echo -n "Starting Oracle: "
        su $ORACLE -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
        ;;
'stop')
        echo -n "Shutting down Oracle: "
        su $ORACLE -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"	
        ;;
'restart')
        echo -n "Shutting down Oracle: "
        su $ORACLE -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
        sleep 5
        echo -n "Starting Oracle: "
        su $ORACLE -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
        ;;
*)
        echo "usage: $0 {start|stop|restart}"
        exit
        ;;
esac
exit


Adjunk rá jogot, és adjuk hozzá a chkconfig-hoz, majd kapcsoljuk be:

# chmod 750 /etc/init.d/dbora
# chkconfig --add dbora
# chkconfig dbora on

Ellenőrizzük:

# chkconfig dbora --list
dbora 0:off 1:off 2:on 3:on 4:on 5:on 6:off

Log fájl

u01/app/oracle/diag/rdbms/<sid>/<sid>/trace/alert_<sid>.log

u01/app/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log