ວິທີການຕິດຕັ້ງຖານຂໍ້ມູນ Oracle 12c ໃນ RHEL/CentOS 7


ຖານຂໍ້ມູນ Oracle ແມ່ນ ໜຶ່ງ ໃນລະບົບການຄຸ້ມຄອງຖານຂໍ້ມູນທີ່ກ່ຽວຂ້ອງ (RDBMS) ທີ່ໃຊ້ກັນຢ່າງແຜ່ຫຼາຍໃນສະພາບແວດລ້ອມຂອງວິສາຫະກິດ. ພັດທະນາ, ຮັກສາແລະສະ ໜັບ ສະ ໜູນ ໂດຍ Oracle Corporation, RDBMS ນີ້ມັກຖືກຕິດຕັ້ງຢູ່ເທິງລົດຊາດຂອງ Enterprise Linux (RHEL, CentOS, ຫຼື Scientific Linux). ນີ້ເຮັດໃຫ້ລະບົບປະຕິບັດການທີ່ເຂັ້ມແຂງຫຼາຍ - ການເລືອກຖານຂໍ້ມູນ.

ໃນບົດຂຽນນີ້, ພວກເຮົາຈະອະທິບາຍວິທີການຕິດຕັ້ງ Oracle 12c ລຸ້ນທີ 2 ໃນເຄື່ອງແມ່ຂ່າຍ RHEL/CentOS 7 GUI.

ຄວາມສົນໃຈ: ຜູ້ໃຊ້ RHEL/CentOS 6 ສາມາດເຮັດຕາມ ຄຳ ແນະ ນຳ ນີ້ໃນການຕິດຕັ້ງຖານຂໍ້ມູນ Oracle Database 12c ໃນ RHEL/CentOS 6.x

ເລີ່ມຕົ້ນ.

ຫລັງຈາກຕິດຕັ້ງ Oracle 12c, ການຕັ້ງຄ່າຈະຖືກປະຕິບັດຜ່ານອິນເຕີເຟດກາຟິກ. ນັ້ນແມ່ນເຫດຜົນທີ່ພວກເຮົາຕ້ອງການເຄື່ອງແມ່ຂ່າຍຂອງ CentOS 7 ທີ່ມີກຸ່ມຊອບແວ X Window System ຕິດຕັ້ງ.

ນອກຈາກນັ້ນ, ກະລຸນາຮັບຊາບວ່າບັນຊີ Oracle ແມ່ນ ຈຳ ເປັນທີ່ຈະດາວໂຫລດເອກະສານຕິດຕັ້ງ Oracle Database 12c (3.2 GB). ຢ່າກັງວົນກ່ຽວກັບເລື່ອງນີ້, ເຖິງແມ່ນວ່າທ່ານສາມາດສ້າງບັນຊີໂດຍບໍ່ເສຍຄ່າ.

ສຸດທ້າຍ, ໃຫ້ແນ່ໃຈວ່າເຄື່ອງແມ່ຂ່າຍຂອງທ່ານມີຢ່າງຫນ້ອຍ 2 GB ຂອງ RAM ແລະ 30 GB ຂອງພື້ນທີ່ດິດທີ່ມີຢູ່. ຂໍ້ ກຳ ນົດດ້ານຮາດແວເຫຼົ່ານີ້ແມ່ນປອດໄພ ສຳ ລັບສະພາບແວດລ້ອມໃນການທົດສອບເຊັ່ນ: ຂອງພວກເຮົາ, ແຕ່ຈະຕ້ອງເພີ່ມຂື້ນຖ້າທ່ານພິຈາລະນາ ນຳ ໃຊ້ Oracle ໃນການຜະລິດ

ການກະກຽມ ສຳ ລັບການຕິດຕັ້ງ Oracle 12c

1. ເພື່ອເລີ່ມຕົ້ນ, ໃຫ້ແນ່ໃຈວ່າທຸກໆຊຸດທີ່ຕິດຕັ້ງຢູ່ໃນລະບົບ RHEL/CentOS 7 ຂອງທ່ານຖືກອັບເດດເປັນເວີຊັນລ້າສຸດຂອງພວກເຂົາ.

# yum update -y

2. ຕໍ່ໄປ, ຕິດຕັ້ງທຸກຄວາມເພິ່ງພາອາໃສທີ່ຕ້ອງການ ສຳ ລັບ RDBMS, ພ້ອມກັບຊຸດ zip ແລະ 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. ສ້າງບັນຊີຜູ້ໃຊ້ແລະກຸ່ມ ສຳ ລັບ Oracle.

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

ສຸດທ້າຍ, ຕັ້ງລະຫັດລັບ ສຳ ລັບບັນຊີ oracle ທີ່ສ້າງຂື້ນ ໃໝ່.

# passwd oracle

4. ຕື່ມໃສ່ຕົວ ກຳ ນົດການຕໍ່ໄປນີ້ໃສ່ແຟ້ມເອກະສານ /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

ແລະ ນຳ ໃຊ້ພວກມັນ:

# sysctl -p
# sysctl -a

5. ກຳ ນົດຂອບເຂດ ຈຳ ກັດ ສຳ ລັບ oracle ໃນເອກະສານ /etc/security/limits.conf.

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

6. ສ້າງໄດເລກະທໍລີທີ່ຕັ້ງຊື່/ຂັ້ນຕອນແລະສະກັດເອກະສານຕິດຕັ້ງທີ່ຕິດຕັ້ງ.

# unzip linuxx64_12201_database.zip -d /stage/

ກ່ອນທີ່ຈະດໍາເນີນການ, ສ້າງປື້ມຄູ່ມືອື່ນໆທີ່ຈະຖືກນໍາໃຊ້ໃນໄລຍະການຕິດຕັ້ງຕົວຈິງ, ແລະມອບສິດທີ່ຈໍາເປັນ.

# 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

ດຽວນີ້ພວກເຮົາກຽມພ້ອມທີ່ຈະ ດຳ ເນີນການຕິດຕັ້ງສະຄິບ.

7. ເປີດ GUI session ໃນ RHEL/CentOS 7 server ແລະເປີດໂຕ script ຕິດຕັ້ງ.

/stage/database/runInstaller 

ແລະເຮັດຕາມຂັ້ນຕອນທີ່ ນຳ ສະ ເໜີ ໂດຍຜູ້ຕິດຕັ້ງ.

ຕິດຕັ້ງ Oracle 12c ໃນ CentOS 7

8. ກະລຸນາໃສ່ທີ່ຢູ່ອີເມວທີ່ກ່ຽວຂ້ອງກັບບັນຊີ Oracle ຂອງທ່ານ (ເປັນທາງເລືອກ).

9. ເລືອກ Create ແລະ configure ຖານຂໍ້ມູນ.

10. ເລືອກຊັ້ນຮຽນຄອມພິວເຕີ້ຕັ້ງແຕ່ພວກເຮົາຕັ້ງຄ່າການຕັ້ງຄ່າ ໜ້ອຍ ທີ່ສຸດແລະຖານຂໍ້ມູນເລີ່ມຕົ້ນ.

11. ເລືອກຕົວເລືອກຕໍ່ໄປນີ້ ສຳ ລັບການຕັ້ງຄ່າຂັ້ນພື້ນຖານ.

  • ຖານຂໍ້ມູນ Oracle:/u01/app/oracle
  • ສະຖານທີ່ຊອບແວ: /u01/app/oracle/product/12.2.0/dbhome_1
  • ທີ່ຢູ່ຖານຂໍ້ມູນແຟ້ມຖານຂໍ້ມູນ:/u01
  • ກຸ່ມ OSDBA: dba
  • ຊື່ຖານຂໍ້ມູນທົ່ວໂລກ: ຕົວເລືອກຂອງທ່ານ. ພວກເຮົາເລືອກ tecmint ຢູ່ທີ່ນີ້.
  • ບັນທຶກລະຫັດລັບ, ດັ່ງທີ່ທ່ານຈະໃຊ້ມັນເມື່ອທ່ານເຊື່ອມຕໍ່ກັບຖານຂໍ້ມູນເປັນຄັ້ງ ທຳ ອິດ.
  • ຍົກເລີກການສ້າງຖານຂໍ້ມູນຄອນເທັນເນີ.

12. ປ່ອຍໃຫ້ລາຍຊື່ສາງສິນຄ້າຄົງຄັງເປັນ/u01/app/oraInventory.

13. ກວດສອບວ່າການກວດສອບກ່ອນການຕິດຕັ້ງແມ່ນ ສຳ ເລັດໂດຍບໍ່ມີຂໍ້ຜິດພາດ.

ຜູ້ຕິດຕັ້ງຈະບໍ່ປ່ອຍໃຫ້ທ່ານຜ່ານຈຸດນີ້ຖ້າພົບຂໍ້ຜິດພາດ.

14. ລໍຖ້າຈົນກ່ວາການຕິດຕັ້ງ Oracle 12c ສໍາເລັດ.

ມັນເປັນໄປໄດ້ວ່າໃນບາງເວລາໃນລະຫວ່າງການຕິດຕັ້ງທ່ານຈະຖືກຮ້ອງຂໍໃຫ້ເຮັດວຽກສອງສາມສະຄິບເພື່ອຈັດຕັ້ງການອະນຸຍາດເພີ່ມເຕີມຫລືບັນຫາທີ່ຖືກຕ້ອງ. ນີ້ແມ່ນຕົວຢ່າງທີ່ນີ້:

ແລະນີ້:

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

15. ຫລັງຈາກນັ້ນ, ທ່ານຈະຕ້ອງກັບໄປ ໜ້າ ຈໍກ່ອນ ໜ້າ ນີ້ໃນຕອນ GUI ແລະກົດ OK ເພື່ອໃຫ້ການຕິດຕັ້ງສາມາດຕໍ່ໄດ້.

ເມື່ອເຮັດ ສຳ ເລັດແລ້ວ, ທ່ານຈະຖືກ ນຳ ສະ ເໜີ ຂໍ້ຄວາມຕໍ່ໄປນີ້ເຊິ່ງຊີ້ບອກ URL ຂອງຜູ້ຈັດການວິສາຫະກິດ Oracle:

https://localhost:5500/em

Oracle 12c ສຳ ເລັດຮູບ

16. ເພື່ອອະນຸຍາດໃຫ້ເຊື່ອມຕໍ່ຈາກພາຍນອກ server, ທ່ານຈະຕ້ອງເປີດພອດຕໍ່ໄປນີ້:

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

ດັ່ງຕໍ່ໄປນີ້:

# 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. ຕໍ່ໄປ, ເຂົ້າສູ່ລະບົບເປັນ oracle ໂດຍໃຊ້ລະຫັດຜ່ານທີ່ຖືກເລືອກໄວ້ກ່ອນ ໜ້າ ນີ້ແລະເພີ່ມສາຍຕໍ່ໄປນີ້ .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. ສຸດທ້າຍ, ທົດແທນ localhost ດ້ວຍ 0.0.0.0 on.

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

19. ຂັ້ນຕອນສຸດທ້າຍປະກອບມີການໂຫຼດ .bash_profile ເພື່ອໃຊ້ການຕັ້ງຄ່າ ໃໝ່.

# source .bash_profile

20. ແລະຫຼັງຈາກນັ້ນເຂົ້າສູ່ລະບົບຖານຂໍ້ມູນໂດຍໃຊ້ບັນຊີລະບົບແລະລະຫັດຜ່ານທີ່ເລືອກໄວ້ໃນຂັ້ນຕອນທີ 11 ຂອງພາກກ່ອນ.

# sqlplus [email 

ທາງເລືອກ, ໃຫ້ສ້າງຕາຕະລາງພາຍໃນຖານຂໍ້ມູນ tecmint ເຊິ່ງພວກເຮົາຈະໃສ່ບັນທຶກຕົວຢ່າງບາງຢ່າງດັ່ງຕໍ່ໄປນີ້.

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

ກະລຸນາຮັບຊາບວ່າຖັນ IDENTITY ໄດ້ຖືກ ນຳ ສະ ເໜີ ເປັນຄັ້ງ ທຳ ອິດໃນ Oracle 12c.

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

ເຮັດໃຫ້ Oracle ສາມາດເລີ່ມຕົ້ນໃນ System Boot ໄດ້

21. ເພື່ອໃຫ້ການບໍລິການຖານຂໍ້ມູນເລີ່ມຕົ້ນໂດຍອັດຕະໂນມັດ, ເພີ່ມສາຍຕໍ່ໄປນີ້ໃສ່ /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. ສຸດທ້າຍ, ພວກເຮົາ ຈຳ ເປັນຕ້ອງຊີ້ບອກວ່າຖານຂໍ້ມູນ tecmint ຄວນຖືກ ນຳ ຂຶ້ນໃນລະຫວ່າງການໃສ່ເກີບໃນ/etc/oratab (Y: ແມ່ນ).

ໃນບົດຂຽນນີ້, ພວກເຮົາໄດ້ອະທິບາຍວິທີການຕິດຕັ້ງ Oracle 12c ໃນ RHEL/CentOS 7, ວິທີການສ້າງແລະປັບຄ່າຖານຂໍ້ມູນ, ແລະວິທີການສ້າງຕາຕະລາງແລະໃສ່ແຖວຂໍ້ມູນ.

ນອກຈາກນັ້ນ, ມັນຍັງມີຄວາມ ສຳ ຄັນທີ່ຈະຕ້ອງສັງເກດວ່າເຊີຟເວີຖານຂໍ້ມູນຄວນຈະຂື້ນແລະເຮັດວຽກເມື່ອລະບົບເລີ່ມຕົ້ນ, ແລະຖານຂໍ້ມູນເລີ່ມຕົ້ນຂອງພວກເຮົາຄວນມີຢູ່ໃນຈຸດນັ້ນ.

ຖ້າທ່ານມີ ຄຳ ຖາມຫຼື ຄຳ ເຫັນໃດໆກ່ຽວກັບບົດຂຽນນີ້, ຮູ້ສຶກວ່າບໍ່ເສຍຄ່າຝາກສາຍພວກເຮົາໂດຍໃຊ້ແບບຟອມລຸ່ມນີ້.