Sådan installeres Oracle Database 12c på RHEL/CentOS 7


Oracle-database er et af de mest anvendte relationsdatabasesystemer (RDBMS) i virksomhedsmiljøer. Denne RDBMS er udviklet, vedligeholdt og understøttet af Oracle Corporation og installeres ofte oven på en smag af Enterprise Linux (RHEL, CentOS eller Scientific Linux). Dette giver et meget robust operativsystem - valg af database.

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

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

Lad os begynde.

Efter installation af Oracle 12c udføres konfigurationen via en grafisk grænseflade. Det er grunden til, at vi har brug for en CentOS 7-server med X Window System-softwaregruppen installeret.

Derudover skal du være opmærksom på, at der kræves en Oracle-konto for at downloade Oracle Database 12c installationsfilen (3,2 GB). Du skal dog ikke bekymre dig om dette, da du kan oprette en konto gratis.

Endelig skal du sørge for, at din server har mindst 2 GB RAM og 30 GB ledig diskplads. Disse hardwarekrav er sikre i et testmiljø som vores, men skal øges, hvis du overvejer at bruge Oracle i produktionen.

Forberedelse til installation af Oracle 12c

1. For at begynde skal du sørge for, at alle de pakker, der aktuelt er installeret på dit RHEL/CentOS 7-system, opdateres til deres nyeste versioner.

# yum update -y

2. Dernæst installerede alle de nødvendige afhængigheder til RDBMS sammen med zip- og pakkepakkerne.

# 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. Opret brugerkonto og grupper til Oracle.

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

Til sidst skal du indstille en adgangskode til den nyoprettede oracle-konto.

# passwd oracle

4. Føj følgende kerneparametre til /etc/sysctl.conf-filen.

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 anvend dem:

# sysctl -p
# sysctl -a

5. Indstil grænserne for oracle i /etc/security/limits.conf-filen.

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

6. Opret en mappe med navnet/scenen og udpak den zip-installationsfil.

# unzip linuxx64_12201_database.zip -d /stage/

Inden du fortsætter, skal du oprette andre mapper, der vil blive brugt under selve installationen, og tildele de nødvendige tilladelser.

# 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 nu klar til at køre installationsskriptet.

7. Åbn en GUI-session på RHEL/CentOS 7-serveren, og start installationsskriptet.

/stage/database/runInstaller 

og følg trinene, der vises af installationsprogrammet.

Installation af Oracle 12c på CentOS 7

8. Indtast den e-mail-adresse, der er knyttet til din Oracle-konto (valgfrit).

9. Vælg Opret og konfigurer en database.

10. Vælg Desktop-klasse, da vi opretter en minimal konfiguration og en startdatabase.

11. Vælg følgende indstillinger for grundlæggende konfiguration.

  • Oracle base:/u01/app/oracle
  • Placering af software: /u01/app/oracle/product/12.2.0/dbhome_1
  • Placering af databasefil:/u01
  • OSDBA-gruppe: dba
  • Globalt databasenavn: dit valg. Vi valgte tecmint her.
  • Vær opmærksom på adgangskoden, da du bruger den, når du opretter forbindelse til databasen.
  • Fjern markeringen i Opret som containerdatabase.

12. Efterlad standardbeholdningskataloget som/u01/app/oraInventory.

13. Kontroller, at installationskontrollen er afsluttet uden fejl.

Installationsprogrammet vil ikke lade dig passere dette punkt, hvis der findes fejl.

14. Vent, indtil Oracle 12c-installationen er afsluttet.

Det er muligt, at du på et eller andet tidspunkt under installationen bliver bedt om at køre et par scripts for at oprette yderligere tilladelser eller rette problemer. Dette illustreres her:

Og her:

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

15. Derefter skal du vende tilbage til det forrige skærmbillede i GUI-sessionen og klikke på OK, så installationen kan fortsætte.

Når den er færdig, vil du blive præsenteret for følgende meddelelse, der angiver URL'en til Oracle Enterprise Manager:

https://localhost:5500/em

Oracle 12c efterbehandling

16. For at tillade forbindelser uden for serveren skal du åbne følgende porte:

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

Som følger:

# 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. Dernæst skal du logge ind som oracle ved hjælp af den adgangskode, der blev valgt tidligere, og tilføje følgende linjer til .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 sidst skal du erstatte localhost med 0.0.0.0 til.

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

19. Det sidste trin består i at genindlæse .bash_profile for at anvende de nye indstillinger.

# source .bash_profile

20. Log derefter på databasen ved hjælp af systemkontoen og den adgangskode, der blev valgt i trin 11 i det foregående afsnit.

# sqlplus [email 

Lad os eventuelt oprette en tabel inde i tecmint-databasen, hvor vi indsætter eksempler på eksempler som følger.

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

Bemærk, at IDENTITY-kolonner først blev introduceret i Oracle 12c.

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

Aktivering af Oracle til start på systemstart

21. For at aktivere databasetjenesten at starte automatisk ved opstart skal du tilføje følgende linjer til /etc/systemd/system/oracle-rdbms.service-filen.

# /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. Endelig skal vi angive, at tecmint-databasen skal bringes op under opstart i/etc/oratab (Y: Ja).

I denne artikel har vi forklaret, hvordan du installerer Oracle 12c på RHEL/CentOS 7, hvordan du opretter og konfigurerer en database, og hvordan du opretter tabeller og indsætter datarækker.

Derudover er det vigtigt at bemærke, at databaseserveren skal køre, når systemet starter, og vores standarddatabase skal være tilgængelig på det tidspunkt.

Hvis du har spørgsmål eller kommentarer til denne artikel, er du velkommen til at sende os en linje ved hjælp af nedenstående formular.