Kako namestiti Oracle Database 12c na RHEL/CentOS 7


Oracle baza podatkov je eden najpogosteje uporabljenih sistemov za upravljanje relacijskih baz podatkov (RDBMS) v podjetniških okoljih. Ta sistem RDBMS, ki ga je razvila, vzdrževala in podpirala družba Oracle Corporation, je pogosto nameščen nad okusom Enterprise Linux (RHEL, CentOS ali Scientific Linux). Zaradi tega je zelo robusten operacijski sistem - izbira baze podatkov.

V tem članku bomo razložili, kako namestiti Oracle 12c, izdaja 2, na strežnik GUEL RHEL/CentOS 7.

Pozor: Uporabniki RHEL/CentOS 6 lahko sledijo tem navodilom za namestitev Oracle Database 12c na RHEL/CentOS 6.x

Začnimo.

Po namestitvi Oracle 12c bo konfiguracija izvedena prek grafičnega vmesnika. To je razlog, zakaj potrebujemo strežnik CentOS 7 z nameščeno programsko skupino X Window System.

Poleg tega upoštevajte, da je za prenos namestitvene datoteke Oracle Database 12c (3,2 GB) potreben račun Oracle. Ne skrbite zaradi tega, saj lahko račun ustvarite brezplačno.

Na koncu se prepričajte, da ima vaš strežnik vsaj 2 GB RAM-a in 30 GB prostora na disku. Te zahteve glede strojne opreme so varne za preskusno okolje, kot je naše, vendar se bodo morale povečati, če razmišljate o uporabi Oracle v proizvodnji.

Priprave na namestitev Oracle 12c

1. Za začetek preverite, ali so vsi paketi, ki so trenutno nameščeni v vašem sistemu RHEL/CentOS 7, posodobljeni na najnovejše različice.

# yum update -y

2. Nato namestite vse potrebne odvisnosti za RDBMS, skupaj s paketi zip in unzip.

# 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. Ustvarite uporabniški račun in skupine za Oracle.

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

Na koncu nastavite geslo za novo ustvarjeni račun oracle.

# passwd oracle

4. Dodajte naslednje parametre jedra v datoteko /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

in jih uporabite:

# sysctl -p
# sysctl -a

5. V datoteki /etc/security/limits.conf nastavite omejitve za oracle.

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

6. Ustvarite imenik /stage in izvlecite stisnjeno namestitveno datoteko.

# unzip linuxx64_12201_database.zip -d /stage/

Pred nadaljevanjem ustvarite druge imenike, ki bodo uporabljeni med dejansko namestitvijo, in dodelite potrebna dovoljenja.

# 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

Zdaj smo pripravljeni za zagon skripta za namestitev.

7. Odprite sejo GUI na strežniku RHEL/CentOS 7 in zaženite namestitveni skript.

/stage/database/runInstaller 

in sledite korakom, ki jih je predstavil namestitveni program.

Namestitev Oracle 12c na CentOS 7

8. Vnesite e-poštni naslov, povezan z vašim računom Oracle (neobvezno).

9. Izberite Ustvari in konfigurirajte bazo podatkov.

10. Izberite namizni razred, ker nastavljamo minimalno konfiguracijo in začetno bazo podatkov.

11. Izberite naslednje možnosti za osnovno konfiguracijo.

  • Oracle osnova:/u01/app/oracle
  • Lokacija programske opreme: /u01/app/oracle/product/12.2.0/dbhome_1
  • Lokacija datoteke zbirke podatkov:/u01
  • OSDBA skupina: dba
  • Ime globalne baze podatkov: vaša izbira. Tukaj smo izbrali tecmint.
  • Zapomnite si geslo, saj ga boste uporabljali ob prvi povezavi z bazo podatkov.
  • Počistite polje Ustvari kot zbirko podatkov vsebnika.

12. Privzeti imenik zalog pustite kot/u01/app/oraInventory.

13. Preverite, ali so bila predhodna preverjanja namestitve zaključena brez napak.

Namestitveni program vas ne bo pustil mimo te točke, če bodo odkrite napake.

14. Počakajte, da se namestitev Oracle 12c konča.

Možno je, da boste na neki točki med namestitvijo pozvani, da zaženete nekaj skriptov, da nastavite nadaljnja dovoljenja ali odpravite težave. To je prikazano tukaj:

In tukaj:

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

15. Po tem se boste morali vrniti na prejšnji zaslon v seji GUI in klikniti V redu, da se bo namestitev lahko nadaljevala.

Ko bo končan, se vam prikaže naslednje sporočilo, ki označuje URL Oracle Enterprise Manager:

https://localhost:5500/em

Oracle 12c Zaključni dotiki

16. Če želite dovoliti povezave zunaj strežnika, morate odpreti naslednja vrata:

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

Kot sledi:

# 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. Nato se prijavite kot oracle z geslom, ki ste ga prej izbrali, in dodajte naslednje vrstice v .bash_profilefile.

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. Na koncu zamenjajte localhost z 0.0.0.0 vklopljenim.

# vi $ORACLE_HOME/network/admin/listener.ora

19. Zadnji korak je ponovno nalaganje .bash_profile za uporabo novih nastavitev.

# source .bash_profile

20. Nato se prijavite v bazo podatkov s sistemskim računom in geslom, izbranim v 11. koraku prejšnjega oddelka.

# sqlplus [email 

Neobvezno ustvarimo tabelo znotraj baze podatkov tecmint, kamor bomo vstavili nekaj vzorčnih zapisov, kot sledi.

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

Upoštevajte, da so bili stolpci IDENTITY prvič predstavljeni v Oracle 12c.

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

Omogočanje zagona Oracle pri zagonu sistema

21. Če želite, da se storitev zbirke podatkov samodejno zažene ob zagonu, dodajte naslednje vrstice v datoteko /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. Na koncu moramo navesti še, da je treba bazo podatkov tecmint odpreti med zagonom v/etc/oratab (Y: Da).

V tem članku smo razložili, kako namestiti Oracle 12c na RHEL/CentOS 7, kako ustvariti in konfigurirati bazo podatkov ter kako ustvariti tabele in vstaviti vrstice podatkov.

Poleg tega je pomembno opozoriti, da mora strežnik baz podatkov delovati in delovati, ko se sistem zažene, in naša privzeta baza podatkov mora biti na voljo takrat.

Če imate kakršna koli vprašanja ali pripombe v zvezi s tem člankom, nam prosim dodajte vrstico z uporabo spodnjega obrazca.