Kako instalirati Oracle Database 12c na RHEL/CentOS 7


Oracle baza podataka je jedan od najčešće korišćenih sistema za upravljanje relacionim bazama podataka (RDBMS) u poslovnim okruženjima. Razvijen, održavan i podržan od strane Oracle Corporation, ovaj RDBMS se često instalira na vrhunac Enterprise Linuxa (RHEL, CentOS ili Scientific Linux). Ovo čini veoma robustan operativni sistem – izbor baze podataka.

U ovom članku ćemo objasniti kako instalirati Oracle 12c Release 2 na RHEL/CentOS 7 GUI server.

Pažnja: Korisnici RHEL/CentOS 6 mogu pratiti ovaj vodič za instaliranje Oracle Database 12c na RHEL/CentOS 6.x

Počnimo.

Preduvjeti:

Nakon instalacije Oracle 12c, konfiguracija će se izvršiti preko grafičkog interfejsa. To je razlog zašto nam je potreban CentOS 7 server sa instaliranom softverskom grupom X Window System.

Pročitajte također: Instalirajte GUI (Gnome) na RHEL/CentOS 7 server

Osim toga, imajte na umu da je Oracle račun potreban za preuzimanje instalacijske datoteke Oracle Database 12c (3,2 GB). Međutim, ne brinite o tome, jer možete kreirati nalog besplatno.

Na kraju, provjerite ima li vaš server najmanje 2 GB RAM-a i 30 GB dostupnog prostora na disku. Ovi hardverski zahtjevi su sigurni za okruženje za testiranje kao što je naše, ali će se morati povećati ako razmislite o korištenju Oraclea u proizvodnji.

Priprema za instalaciju Oracle 12c

1. Za početak, uvjerite se da su svi paketi koji su trenutno instalirani na vašem RHEL/CentOS 7 sistemu ažurirani na svoje najnovije verzije.

yum update -y

2. Zatim je instaliran sve potrebne zavisnosti za RDBMS, zajedno sa zip i unzip paketima.

yum install -y binutils.x86_64 compat-libcap1.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.i686 glibc.x86_64 glibc-devel.i686 glibc-devel.x86_64 ksh compat-libstdc++-33 libaio.i686 libaio.x86_64 libaio-devel.i686 libaio-devel.x86_64 libgcc.i686 libgcc.x86_64 libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64 libXi.i686 libXi.x86_64 libXtst.i686 libXtst.x86_64 make.x86_64 sysstat.x86_64 zip unzip

3. Kreirajte korisnički račun i grupe za Oracle.

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle

Konačno, postavite lozinku za novokreirani oracle nalog.

passwd oracle

4. Dodajte sljedeće parametre kernela u datoteku /etc/sysctl.conf.

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 8329226240
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586

i primijeniti ih:

sysctl -p
sysctl -a

5. Postavite ograničenja za oracle u datoteci /etc/security/limits.conf.

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

6. Kreirajte direktorij pod nazivom /stage i raspakirajte zip instalacijsku datoteku.

unzip linuxx64_12201_database.zip -d /stage/

Prije nego što nastavite, kreirajte druge direktorije koji će se koristiti tokom stvarne instalacije i dodijelite potrebne dozvole.

mkdir /u01
mkdir /u02
chown -R oracle:oinstall /u01
chown -R oracle:oinstall /u02
chmod -R 775 /u01
chmod -R 775 /u02
chmod g+s /u01
chmod g+s /u02

Sada smo spremni za pokretanje instalacijske skripte.

7. Otvorite GUI sesiju na RHEL/CentOS 7 serveru i pokrenite instalacijsku skriptu.

/stage/database/runInstaller 

i slijedite korake koje je prikazao instalater.

Instalacija Oracle 12c na CentOS 7

8. Unesite adresu e-pošte povezanu sa vašim Oracle računom (opcionalno).

9. Odaberite Kreiraj i konfigurirajte bazu podataka.

10. Odaberite klasu Desktop jer postavljamo minimalnu konfiguraciju i početnu bazu podataka.

11. Odaberite sljedeće opcije za osnovnu konfiguraciju.

  • Oracle baza: /u01/app/oracle
  • Lokacija softvera: /u01/app/oracle/product/12.2.0/dbhome_1
  • Lokacija datoteke baze podataka: /u01
  • OSDBA grupa: dba
  • Naziv globalne baze podataka: vaš izbor. Ovdje smo odabrali tecmint.
  • Obratite pažnju na lozinku, jer ćete je koristiti kada se prvi put povežete na bazu podataka.
  • Poništite izbor baze podataka Kreiraj kao kontejner.

12. Ostavite zadani direktorij Inventar kao /u01/app/oraInventory.

13. Provjerite jesu li prethodne provjere instalacije završene bez grešaka.

Instalater vam neće dozvoliti da pređete ovu tačku ako se pronađu greške.

14. Pričekajte dok se instalacija Oracle 12c ne završi.

Moguće je da će u nekom trenutku tokom instalacije od vas biti zatraženo da pokrenete nekoliko skripti kako biste podesili dalje dozvole ili ispravili probleme. Ovo je ilustrovano ovdje:

i ovdje:

cd /u01/app/oraInventory
./orainstRoot.sh
cd /u01/app/oracle/product/12.2.0/dbhome_1
./root.sh

15. Nakon toga, morat ćete se vratiti na prethodni ekran u GUI sesiji i kliknuti OK kako bi se instalacija mogla nastaviti.

Kada se završi, prikazat će vam se sljedeća poruka koja ukazuje na URL Oracle Enterprise Manager:

https://localhost:5500/em

Oracle 12c Finishing Touches

16. Da dozvolite veze izvan servera, morat ćete otvoriti sljedeće portove:

1521/TCP
5500/TCP
5520/TCP
3938/TCP

Kao što slijedi:

firewall-cmd --zone=public --add-port=1521/tcp --add-port=5500/tcp --add-port=5520/tcp --add-port=3938/tcp --permanent
firewall-cmd --reload

17. Zatim se prijavite kao oracle koristeći lozinku koja je prethodno odabrana i dodajte sljedeće redove u datoteku .bash_profile.

TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1; export ORACLE_HOME
ORACLE_SID=tecmint; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/lib64; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

18. Konačno, zamijenite localhost sa 0.0.0.0 uključenim.

vi $ORACLE_HOME/network/admin/listener.ora

19. Posljednji korak se sastoji od ponovnog učitavanja .bash_profile za primjenu novih postavki.

source .bash_profile

20. Zatim se prijavite na bazu podataka koristeći sistemski račun i lozinku odabranu u 11. koraku prethodnog odjeljka.

sqlplus system@tecmint

Po želji, napravimo tabelu unutar tecmint baze podataka u koju ćemo umetnuti neke uzorke zapisa na sljedeći način.

SQL> CREATE TABLE NamesTBL
(id   NUMBER GENERATED AS IDENTITY,
name VARCHAR2(20));

Imajte na umu da su kolone IDENTITY prvi put uvedene u Oracle 12c.

SQL> INSERT INTO NamesTBL (name) VALUES ('Gabriel');
SQL> INSERT INTO NamesTBL (name) VALUES ('Admin');
SQL> SELECT * FROM NamesTBL;

Omogućavanje pokretanja Oraclea pri pokretanju sistema

21. Da biste omogućili automatsko pokretanje usluge baze podataka pri pokretanju, dodajte sljedeće redove u datoteku /etc/systemd/system/oracle-rdbms.service.

/etc/systemd/system/oracle-rdbms.service
Invoking Oracle scripts to start/shutdown Instances defined in /etc/oratab
and starts Listener

[Unit]
Description=Oracle Database(s) and Listener
Requires=network.target

[Service]
Type=forking
Restart=no
ExecStart=/u01/app/oracle/product/12.2.0/dbhome_1/bin/dbstart /u01/app/oracle/product/12.2.0/dbhome_1
ExecStop=/u01/app/oracle/product/12.2.0/dbhome_1/bin/dbshut /u01/app/oracle/product/12.2.0/dbhome_1
User=oracle

[Install]
WantedBy=multi-user.target

22. Konačno, moramo naznačiti da se tecmint baza podataka treba pokrenuti tokom pokretanja u /etc/oratab (Y: Da).

Sažetak

U ovom članku smo objasnili kako instalirati Oracle 12c na RHEL/CentOS 7, kako kreirati i konfigurirati bazu podataka i kako kreirati tabele i umetati redove podataka.

Dodatno, važno je napomenuti da server baze podataka treba da bude pokrenut i da radi kada se sistem pokrene, a naša podrazumevana baza podataka treba da bude dostupna u tom trenutku.

Ako imate bilo kakvih pitanja ili komentara o ovom članku, slobodno nam pošaljite liniju koristeći obrazac ispod.