Hvordan installere Oracle Database 12c på RHEL/CentOS 7


Oracle-database er et av de mest brukte relasjonsdatabasestyringssystemene (RDBMS) i bedriftsmiljøer. Utviklet, vedlikeholdt og støttet av Oracle Corporation, er dette RDBMS ofte installert på toppen av en variant av Enterprise Linux (RHEL, CentOS eller Scientific Linux). Dette gir et veldig robust operativsystem – databasevalg.

I denne artikkelen vil vi forklare hvordan du installerer Oracle 12c Release 2 på en RHEL/CentOS 7 GUI-server.

OBS: RHEL/CentOS 6-brukere kan følge denne veiledningen for å installere Oracle Database 12c på RHEL/CentOS 6.x

La oss begynne.

Etter installasjon av Oracle 12c, vil konfigurasjonen utføres gjennom et grafisk grensesnitt. Det er grunnen til at vi trenger en CentOS 7-server med X Window System-programvaregruppen installert.

Vær i tillegg oppmerksom på at det kreves en Oracle-konto for å laste ned installasjonsfilen for Oracle Database 12c (3,2 GB). Ikke bekymre deg for dette, siden du kan opprette en konto gratis.

Til slutt, sørg for at serveren din har minst 2 GB RAM og 30 GB ledig diskplass. Disse maskinvarekravene er trygge for et testmiljø som vårt, men må økes hvis du vurderer å bruke Oracle i produksjon.

Forbereder for Oracle 12c-installasjon

1. For å begynne, sørg for at alle pakkene som er installert på ditt RHEL/CentOS 7-system er oppdatert til de nyeste versjonene.

# yum update -y

2. Deretter installerte alle nødvendige avhengigheter for RDBMS, sammen med zip- og unzip-pakkene.

# 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. Opprett brukerkontoen og gruppene for Oracle.

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

Til slutt, angi et passord for den nyopprettede oracle-kontoen.

# passwd oracle

4. Legg til følgende kjerneparametere til filen /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

og bruk dem:

# sysctl -p
# sysctl -a

5. Sett grensene for oracle i filen /etc/security/limits.conf.

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

6. Opprett en katalog kalt /stage og pakk ut den zippede installasjonsfilen.

# unzip linuxx64_12201_database.zip -d /stage/

Før du fortsetter, opprette andre kataloger som skal brukes under selve installasjonen, og tilordne nødvendige tillatelser.

# 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

Vi er nå klare til å kjøre installasjonsskriptet.

7. Åpne en GUI-økt i RHEL/CentOS 7-serveren og start installasjonsskriptet.

/stage/database/runInstaller 

og følg trinnene presentert av installatøren.

Installerer Oracle 12c på CentOS 7

8. Skriv inn e-postadressen knyttet til Oracle-kontoen din (valgfritt).

9. Velg Opprett og konfigurer en database.

10. Velg Desktop-klassen siden vi setter opp en minimal konfigurasjon og en startdatabase.

11. Velg følgende alternativer for grunnleggende konfigurasjon.

  • Oracle-base: /u01/app/oracle
  • Programvareplassering: /u01/app/oracle/product/12.2.0/dbhome_1
  • Databasefilplassering: /u01
  • OSDBA-gruppe: dba
  • Globalt databasenavn: ditt valg. Vi valgte tecmint her.
  • Vær oppmerksom på passordet, siden du kommer til å bruke det første gang du kobler til databasen.
  • Fjern merket for Opprett som beholderdatabase.

12. La standard Inventory Directory være /u01/app/oraInventory.

13. Bekreft at forhåndssjekkene for installasjonen er fullført uten feil.

Installasjonsprogrammet vil ikke la deg forbi dette punktet hvis noen feil blir funnet.

14. Vent til Oracle 12c-installasjonen er fullført.

Det er mulig at du på et tidspunkt under installasjonen vil bli bedt om å kjøre et par skript for å sette opp ytterligere tillatelser eller rette opp problemer. Dette er illustrert her:

Og her:

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

15. Etter det må du gå tilbake til forrige skjermbilde i GUI-økten og klikke OK slik at installasjonen kan fortsette.

Når den er ferdig, vil du bli presentert med følgende melding som angir URL-en til Oracle Enterprise Manager:

https://localhost:5500/em

Oracle 12c finpuss

16. For å tillate tilkoblinger fra utenfor serveren, må du åpne følgende porter:

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

Følgende:

# 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. Logg deretter på som oracle med passordet som ble valgt tidligere og legg til følgende linjer i .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. Til slutt, erstatt localhost med 0.0.0.0 på.

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

19. Det siste trinnet består i å laste .bash_profile på nytt for å bruke de nye innstillingene.

# source .bash_profile

20. Og logg deretter på databasen med systemkontoen og passordet valgt i trinn 11 i forrige avsnitt.

# sqlplus [email 

La oss eventuelt lage en tabell i tecmint-databasen hvor vi vil sette inn noen eksempelposter som følger.

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

Vær oppmerksom på at IDENTITY-kolonnene først ble introdusert i Oracle 12c.

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

Aktiverer Oracle for å starte ved systemoppstart

21. For å aktivere databasetjenesten til å starte automatisk ved oppstart, legg til følgende linjer i filen /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. Til slutt må vi indikere at tecmint-databasen skal hentes opp under oppstart i /etc/oratab (Y: Yes).

I denne artikkelen har vi forklart hvordan du installerer Oracle 12c på RHEL/CentOS 7, hvordan du oppretter og konfigurerer en database, og hvordan du lager tabeller og setter inn rader med data.

I tillegg er det viktig å merke seg at databaseserveren skal være oppe og kjøre når systemet starter, og standarddatabasen vår skal være tilgjengelig på det tidspunktet.

Hvis du har spørsmål eller kommentarer om denne artikkelen, send oss gjerne en melding ved å bruke skjemaet nedenfor.