نصب اوراکل 21c در oracle linux



نصب اوراکل 21c در oracle linux

نصب و راه اندازی دیتابیس اوراکل 21c  روی سیستم عامل (Oracle Linux 8 (OL8

در این مقاله بانک اطلاعاتی می خواهیم نصب و راه اندازی دیتابیس اوراکل 21c  روی سیستم عامل (Oracle Linux 8 (OL8 که یکی از جدیدترین نرم افزارهای شرکت اوراکل می باشد را انجام دهیم.

بانک اطلاعاتی oracle 21c یک نسخه دیتابیس نوآورانه می باشد. این نسخه از دیتابیس اوراکل ممکن هنوز مناسب کار عملیاتی و جدی نباشد تا اینکه مشکلات این نسخه برطرف شود. پس بنابراین قبل از کار با دیتابیس اوراکل 21c پیشنهاد می شود مقاله را کامل مطالعه کنید.

روال نصب اوراکل 21c به این صورت است که ابتدا نرم افزار دانلود شده و سپس دیتابیس (Oracle 21c (64bit بر روی سیستم عامل لینوکس Oracle linux 8 - 64bit به همراه تنظیم پیش نیازها نصب و راه اندازی می شود که نرم افزار اوراکل روی سروری راه اندازی می شود که حداقل 2GB Ram swap داشته باشد و مراحل نصب بایستی به صورت مرحله به مرحله انجام شود. 

دانلود نرم افزار oracle 21c

شما می توانید از نرم افزار را از دو منبع OTN و MOS دانلود کنید.

تنظیم فایل Hosts در لینوکس - Hosts files

در سیستم عامل لینوکس در آدرس "/etc/hosts” فایلی وجود دارد که باید اطلاعات مربوط به سرور را مشخص کنید:

<IP-address>  <fully-qualified-machine-name>  <machine-name>

برای مثال :

127.0.0.1       localhost
localhost.localdomain localhost4 localhost4.localdomain4 
192.168.56.107  ol8-21.localdomain  ol8-21

در فایل در آدرس "/etc/hostname" مقدار نام هاست را برابر پارامتر زیر قرار دهید

ol8-21.localdomain

نصب پیش نیازهای اوراکل

برای تکمیل پیش نیازهای اولیه اوراکل ، تنظیمات نصب را می توانید به صورت خودکار یا تنظیمات دستی انجام دهید.

نصب اوراکل 21c در oracle linux

نصب پیش نیازها به صورت خودکار

اگر شما پکیج نصبی شما "oracle-database-preinstall-21c” باشد از طریق دستور زیر تمامی پیش نیازهای اوراکل به صورت خودکار نصب خواهد شد.

 dnf install -y oracle-database-preinstall-21c#

اگر درحین نصب پکیج با خطای بروزرسانی سیستم عامل برخورد کردید می توانید دستور زیر را اجرا کنید اما به صورت کلی نیازی به اجرا دستور زیر نمی باشد:

 yum update -y#

اگر سیستم عامل شما RHEL8 یا CentOS 8 می باشد می توانید برنامه را به صورت RPM از مخازن repository به نام OL8 از طریق دستورات زیر دریافت کنید که این repositoy تمامی مخازن وابسته به خود را به همرا دارد.

curl -o oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL8/appstream/x86_64/getPackage/ oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm

 

yum -y localinstall oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm

 

نصب پیش نیازها به صورت دستی

اگر شما نخواهید برای نصب از پکیج  "oracle-database-preinstall-21c” و مخازن وابسته به آن استفاده کنید.بایستی تمامی موارد نصب و راه اندازی را به صورت دستی انجام دهید.

و برای این کار با توجه به نوع سیستم عامل باید به فایل به آدرس "etc/sysctl.conf/" یا "etc/sysctl.d/98-oracle.conf/" رفته و مقادیر زیر را در پارامترها ثبت کنید.

fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
kernel.panic_on_oops = 1
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500

بعد از اعمال مقداردهی مقادیر بالا با استفاده از دستور زیر kernel سیستم را برای دریافت پارامترهای جدید آماده کنید.

/sbin/sysctl -p
 Or#
/sbin/sysctl -p /etc/sysctl.d/98-oracle.conf

سپس به آدرس "etc/security/limits.d/oracle-database-preinstall-21c.conf/" رفته و شبیه دستورات زیر ، مقادیر را درج کنید.

oracle   soft   nofile    1024
oracle   hard   nofile    65536
oracle   soft   nproc    16384
oracle   hard   nproc    16384
oracle   soft   stack    10240
oracle   hard   stack    32768
oracle   hard   memlock    134217728
oracle   soft   memlock    134217728
oracle   soft   data    unlimited
oracle   hard   data    unlimited

تمامی packages پکیج های لیست زیر بایستی کامل نصب شود و از طریق دستورات زیر نصب کنید.

dnf install -y bc
dnf install -y binutils
dnf install -y compat-openssl10
dnf install -y elfutils-libelf
dnf install -y glibc
dnf install -y glibc-devel
dnf install -y ksh
dnf install -y libaio
dnf install -y libXrender
dnf install -y libX11
dnf install -y libXau
dnf install -y libXi
dnf install -y libXtst
dnf install -y libgcc
dnf install -y libnsl
dnf install -y libstdc++
dnf install -y libxcb
dnf install -y libibverbs
dnf install -y make
dnf install -y policycoreutils
dnf install -y policycoreutils-python-utils
dnf install -y smartmontools
dnf install -y sysstat

 Added by me#
dnf install -y unixODBC

از طریق دستورات لینوکسی زیر چندین گروه و کاربر جدید ایجاد کنید.

groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper 
groupadd -g 54324 backupdba#
groupadd -g 54325 dgdba#
groupadd -g 54326 kmdba#
groupadd -g 54327 asmdba#
groupadd -g 54328 asmoper#
groupadd -g 54329 asmadmin#
groupadd -g 54330 racdba#

useradd -u 54321 -g oinstall -G dba,oper oracle

در ایجاد گروه ها 3 گروه اول که # ندارد ضروری می باشد و مابقی گروه ها اختیاری می باشد.

 

نصب و تنظیمات اضافه

برای کاربری به نام "oracle" کلمه عبوری ست کنید.

passwd oracle

مانند تصویر زیر در آدرس "/etc/selinux/config" برای پارامتر SELINUX مقدار زیر را قرار دهید.

SELINUX=permissive

بعد از این که تمامی دستورات را اجرا کردید، سرور را ریست کرده و دستور زیر را وارد کنید.

 setenforce Permissive#

اگر در سیستم عامل لینوکس شما فایروال firewall فعال بود بایستی از طریق دستور زیر آنرا stop و سپس غیرفعال کنید.

 systemctl stop firewalld#
 systemctl disable firewalld#

اگر سیستم عامل شما از نوع Oracle Linux یا UEK نیست باید تنظیمات پیش نیاز به صورت دستی را غیرفعال کنید.

سپس مانند دستورات زیر دو دایرکتوری ایجاد و دسترسی های لازم را بدهید.

mkdir -p /u01/app/oracle/product/21.0.0/dbhome_1
mkdir -p /u02/oradata
chown -R oracle:oinstall /u01 /u02
chmod -R 775 /u01 /u02

جدا از این که برای کار در لینوکس از محیط کنسول استفاده می کنید باید از SSH tunneling استفاده کنید و از طریق دستور زیر لاگین کنید.

<xhost +<machine-name

سپس در آدرس مربوط دایرکتوری به نام "scripts" ایجاد کنید.

mkdir /home/oracle/scripts

یک فایل به نام "setEnv.sh" وجود دارد داخل محتوی این فایل یک کراکتر "$" با استفاده از کراکتر "\" جدا شده است آن را حذف کنید.

cat > /home/oracle/scripts/setEnv.sh <<EOF
 Oracle Settings#
export TMP=/tmp
export TMPDIR=\$TMP

export ORACLE_HOSTNAME=ol8-21.localdomain
export ORACLE_UNQNAME=cdb1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=\$ORACLE_BASE/product/21.0.0/dbhome_1
export ORA_INVENTORY=/u01/app/oraInventory
export ORACLE_SID=cdb1
export PDB_NAME=pdb1
export DATA_DIR=/u02/oradata

export PATH=/usr/sbin:/usr/local/bin:\$PATH
export PATH=\$ORACLE_HOME/bin:\$PATH

export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=\$ORACLE_HOME/jlib:\$ORACLE_HOME/rdbms/jlib
EOF

سپس از طریق دستور زیر خروجی دستورات و محتوی فایل "setEnv.sh" را به انتهای فایل  "home/oracle/.bash_profile/" انتفال دهید.

echo ". /home/oracle/scripts/setEnv.sh" >> /home/oracle/.bash_profile

سرویس را startup/shutdown کنید ، فایل های "start_all.sh" و "stop_all.sh" ساخته می شود و بعد از ایجاد شدن در خصوص دسترسی ها و permissions  و سطح مالکیت ownership مطمئن شوید.

cat > /home/oracle/scripts/start_all.sh <<EOF
/bin/bash!#
. /home/oracle/scripts/setEnv.sh

export ORAENV_ASK=NO
. oraenv
export ORAENV_ASK=YES

dbstart \$ORACLE_HOME
EOF


cat > /home/oracle/scripts/stop_all.sh <<EOF
/bin/bash!#
. /home/oracle/scripts/setEnv.sh

export ORAENV_ASK=NO
. oraenv
export ORAENV_ASK=YES

dbshut \$ORACLE_HOME
EOF

chown -R oracle:oinstall /home/oracle/scripts
chmod u+x /home/oracle/scripts/*.sh

بعد از اینکه تمامی مراحل اعلام شده با موفقیت انجام شد باید فایل "etc/oratab/" را ویرایش کنید . شما می توانید با استفاده از دستور زیر دیتابیس را یک باز stop/start کنید تا بتوانید .

~/scripts/start_all.sh
~/scripts/stop_all.sh

نصب نرم افزار اوراکل 21c

شما ابتدا بایستی با کاربر oracle  وارد سیستم شوید و لاگین کنید و سپس به دایرکتوری Oracle_HOME برید و سپس فایل نرم افزار اوراکل که دانلود کردین به صورت zip می باشد و باید unzip  کنید باید فایل نصب و را اندازی اوراکل به نام (Oracle Universal Installer (OUI را از طریق دستور زیر اجرا کنید.

DISPLAY=<machine-name>:0.0; export DISPLAY

سپس دو اسکریپت زیر را در ادرس های اعلامی اجرا کنید.

.Unzip software#
cd $ORACLE_HOME
unzip -oq /path/to/software/LINUX.X64_213000_db_home.zip

.Interactive mode#
runInstaller/.

Silent mode#
./runInstaller -ignorePrereq -waitforcompletion -silent 
-responseFile ${ORACLE_HOME}/install/response/db_install.rsp 
oracle.install.option=INSTALL_DB_SWONLY 
ORACLE_HOSTNAME=${ORACLE_HOSTNAME} 
UNIX_GROUP_NAME=oinstall 
INVENTORY_LOCATION=${ORA_INVENTORY} 
SELECTED_LANGUAGES=en,en_GB 
ORACLE_HOME=${ORACLE_HOME} 
ORACLE_BASE=${ORACLE_BASE} 
oracle.install.db.InstallEdition=EE 
oracle.install.db.OSDBA_GROUP=dba 
oracle.install.db.OSBACKUPDBA_GROUP=dba 
oracle.install.db.OSDGDBA_GROUP=dba 
oracle.install.db.OSKMDBA_GROUP=dba 
oracle.install.db.OSRACDBA_GROUP=dba 
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false 
DECLINE_SECURITY_UPDATES=true 

در حال حاضر نرم افزار بانک اطلاعاتی اوراکل با موفقیت نصب شد. شما الان می توانید در اوراکل دیتابیس را ایجاد کنید.

As a root user, execute the following script(s)
         /u01/app/oraInventory/orainstRoot.sh1
         /u01/app/oracle/product/21.0.0/dbhome_1/root.sh

ایجاد بانک اطلاعاتی در اوراکل 21c

شما می توانید دیتابیس اوراکل به روش های متفاوتی ایجاد کنید شما می توانید از طریق Database Configuration Assistant - DBCA بانک اطلاعاتی را ایجاد کنید و اگر در لینوکس از محیط گرافیکی GUI دارید می توانید دیتابیس را به صورت گرافیکی ایجاد کنید و همچنین امکان جدیدی در اوراکل 21c اضافه شده که می توانید دیتابیس را به صورت بی صدا silent ایجاد کنید.


.Start the listener#
lsnrctl start

.Interactive mode#
dbca

.Silent mode#
dbca -silent -createDatabase    
     templateName General_Purpose.dbc-    
     gdbname ${ORACLE_SID} -sid  ${ORACLE_SID} -responseFile NO_VALUE-    
     characterSet AL32UTF8-    
     sysPassword SysPassword1-    
     systemPassword SysPassword1-    
     createAsContainerDatabase true-    
     numberOfPDBs 1-    
     pdbName ${PDB_NAME}-    
     pdbAdminPassword PdbPassword1-    
     databaseType MULTIPURPOSE-    
     memoryMgmtType auto_sga-    
     totalMemory 2000-    
     storageType FS-    
     "datafileDestination "${DATA_DIR}-    
     redoLogFileSize 50-    
     emConfiguration NONE-    
     ignorePreReqs-

 

 

جهت ثبت پیام باید در سایت عضو شوید و یا وارد سایت شده باشید .
ورود به حساب کاربری / ایجاد حساب کاربری
کار با Built-in Functions در پایتون (2)

کار با Built-in Functions در پایتون (2)

در این مقاله زمیوسی در بخش آموزش قصد داریم در مورد کار با Built-in Functions در پایتون صحبت کنیم. شما قبلاً با محبوب ترین تابع در پایتون یعنی ()print آشنا شدید.

Cheat Sheet در پایتون - مبانی پایتون (1)

Cheat Sheet در پایتون - مبانی پایتون (1)

پایتون 3 یک زبان برنامه نویسی واقعا همه کاره است که دوستش دارم هم برای توسط توسعه دهندگان وب web developers، دانشمندان داده data scientists و ...

10 وب سایت برای حل تمام سوالات مربوط به برنامه نویسی

10 وب سایت برای حل تمام سوالات مربوط به برنامه نویسی

در این مقاله زمیوسی، قصد داریم در مورد 10 سایت که برای حل تمام سوالات مربوط به برنامه نویسی شما صحبت کنیم. در هنگام یادگیری برنامه نویسی یا توسعه یک نرم افزار ....

APEX_ZIP : مدیریت فایل های Zip از PL/SQL

APEX_ZIP : مدیریت فایل های Zip از PL/SQL

در این قسمت از آموزش مقاله زمیوس در بخش دیتابیس قصد داریم مجدد با یکی از قابلیت های APEX آشنا شویم در این مقاله با استفاده از پکیج APEX_ZIP ...