حداقل ۲۰ گیگ دیسک برای نصب ۲ محصول Oracle DatabaseOracle Grid Infrastructure بر روی OEL 6.x الزامی است.

نصب سیستم‌عامل OEL 6.8

ابتدا ISO را وارد میکنیم و ماشین را از روی دیسک boot میکنیم تا به نصاب Anaconda برسیم

گزینه اول را انتخاب و ورود میکنیم:

اگر از صحت مدیای نصب خود مطمئن هستید این مرحله را skip کنید در غیر این صورت برای تست بر روی ok کلیک کنید

به صفحه نصاب anaconda 6.x خوش آمدید

زبان نصاب را انتخاب کنید:

لی‌اوت صفحه کلید خود را انتخاب کنید:

در این مرحله دیوایس دیسک سختی که قصد نصب سیستم‌عامل بر روی آن را دارید انتخاب کنید:

گزینه اول برای نصب در دیسکهای لوکال ماشین و گزینه دوم برای نصب سیستم‌عامل در دیسکهای شبکه بر روی تجهیزات SAN با انواع پرتوکلهای FCoE/ iSCSI/ zFCP

نکته: اکیدا توصیه میگردد سیستم‌عامل بر روی دیسکهای لوکال ماشین نصب و راه‌اندازی گردد.

اگر از قبل سیستم‌عامل گنو/لینوکس بر روی دیسکهای شما نصب بوده باشد صفحه زیر به شما نمایش داده می‌شود

در اینجا ما نصب تازه را انتخاب می‌کنیم

در این مرحله نام ماشین در شبکه (hostname) و پیکربندی شبکه را انجام می‌دهیم.

نکته: حتماً تیک Connect automatically رو بزنید.

در این مرحله منطقه زمانی خود را مشخص میکنیم

در این مرحله پسوردی برای کاربر root مشخص کنید

اگر پسورد ساده‌ای انتخاب کرده‌اید و به آن اصرار دارید بر روی دکمه Use Anyway کلیک کنید

بر روی گزینه‌ی Create Custom Layout کلیک کنید

در این مرحله ۲ پارتیشن میسازیم یکی برای swap و یکی برای / (در صورت نیاز نقاط اتصال را در هاردهای جدا تقسیم کنید)

در صورت مشاهده این پیام بر روی Write Change to disk کلیک کنید

در این مرحله بوت لودر را در صورت نیاز پیکربندی کنید

در این مرحله برای انتخاب پکیج‌های مورد نیاز بر روی گزینه‌ی Customize now کلیک کنید و ادامه دهید:

حال پکیج‌های زیر را انتخاب کنید:

: check : Base System -> Compatibility libraries
: check : Base System -> Networking Tools -> nmap
: if you connect to NAS Serevr : check : Base system -> iSCSI Storage Client
: check : Servers -> System administartion tools -> hardlink, lshw, lsscsi, oracle-rdbms-server-11gR2-preinstall, screen, tree, oracleasm-support
: uncheck : Base System -> Java Platform
== Notic: All count packages completed: 685

بعد از انتخاب پکیج‌ها Next میکنیم و منتظر میمانیم که نصب تمام شود. در صورتی که مدیای نصب شما صحیح باشد نصب سیستم‌عامل به همراه پکیج‌ها بدون مشکل انجام خواهد گردید.

پس از اتمام نصب سیستم‌عامل را از روی دیسک سخت boot خواهیم کرد و با ابزار MobaXterm و از طریق SSH یک session ایجاد خواهیم کرد.

از طریق Sftp فایلهای فشرده نصاب Oracle Database و Oracle Grid Infrastructure را در مسیر /usr/local/src کپی خواهیم کرد

2 پارت اول مربوط به محصول Oracle Database و پارت سوم مرتبط با محصول Oracle Grid Infrastructure می‌باشد.

ابتدا ۴ دیسک ۱۰ گیگی به هر کدام از ماشینهای مجازی اختصاص میدهیم

نکته: این کار بدون خاموش کردن ماشینها ممکن است.

تنظیم hostname و dns در لینوکس

تنظیم DNS

برای تنظیم dns در لینوکس فایل زیر به هر طریقی باید پیکربندی گردد

vim /etc/resolv.conf

https://en.wikipedia.org/wiki/Resolv.conf

تنظیم hostname

برای تنظیم hostname باید فایل زیر به هر طریق پیکربندی گردد:

vim /etc/sysconfig/network

https://www.centos.org/docs/5/html/5.2/Deployment_Guide/s2-sysconfig-network.html

چرا اوراکل nozeroconf را اضافه میکند؟

http://blog.omotech.com/?p=1005

http://www.zeroconf.org

مشاهده لیست پکیجهای اوراکل

rpm -qa | grep -i oracle

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

چک کردن پیکربندی آی پی استاتیک

vim /etc/sysconfig/network-scripts/ifcfg-eth0

اگه پیکربندی‌های IPADDR و NETMASK باشد و Ping ماشین در شبکه برقرار باشد و همچنین هر دو ماشین همدیگر را ببینند مشکلی وجود نخواهد داشت

غیرفعال کردن فایروال

بررسی نسخه توزیع نصب شده

cat /etc/system-release

اگر نسخه ۶ بود یعنی باید iptables را خاموش کنیم و اگر نسخه ۷ بود یعنی FirewallD را باید خاموش کنیم.

/etc/init.d/iptables stop
/etc/init.d/ip6tables stop
chkconfig iptables off
chkconfig ip6tables off

تنظیم روت داخلی

با ویرایش فایل hosts روتینگ داخلی رو برای پینگ از روی name پیکربندی میکنیم.

vim /etc/hosts

با کامندهای shift + g + o در ویرایشگر vim می‌توانیم به آخر خط برویم و یک new line ایجاد کنیم

برای تست از کامند زیر استفاده میکنیم:

ping `hostname`

بک تیگ در شل لینوکس اولویت اجرا رو مشخص میکنه به این صورت که اول کامند داخل بک تیگ اجرا میشه و بعد باقی کامندها

پیکربندی کاربران و گروه‌های استاندارد برای نصب و راه‌اندازی پایگاه‌داده اوراکل 11g

groupadd oper
groupadd asmadmin
groupadd asmdba
groupadd asmoper
usermod -a -G oper,asmdba oracle
useradd -g oinstall -G asmadmin,asmdba,asmoper,dba -m grid
passwd grid
passwd oracle
mkdir -p /u01/app/grid
mkdir -p /u02/app/oracle
chown -R grid:oinstall /u01
chown -R oracle:oinstall /u02
chmod -R 770 /u01
chmod -R 770 /u02

آپشن m در دستور useradd به معنی ساخت دایرکتوری home کاربر بلافاصله در همین زمان است اگر این آپشن اضافه نگردد تا کاربر در سیستم‌عامل لاگین نکند دایکتوری home آن ساخته نمیگردد.

آپشن g گروه اصلی را مشخص میکند و آپشن G گروه‌های ثانویه کاربر را مشخص میکند.

آپشن p در دستور mkdir میگوید اگر دایکتوری‌ها به صورت آبشاری وجود نداشتند دایکتوری‌ها را خودت ایجاد کن.

دایکتوری /u01/app/grid به منظور قرارگیری محل Oracle Base نرم‌افزار grid

و دایکتوری /u02/app/oracle به منظور قرارگیری محل Oracle Base نرم‌افزار oracle db ایجاد گردیده است.

اگر گروهی را به اشتباه اضافه کردید با کامند زیر آن را بلافاصله پاک کنید تا ترتیب group id ها بهم نخورد

groupdel [name]

چک کردن id گروه‌ها و کاربران

grep oracle /etc/passwd
grep oinstall /etc/group

اعمال محدودیتهای دسترسی به منابع کرنل برای کاربران

با بازکردن فایل /etc/security/limits.conf در آخر فایل خطوط اضافه شده زیر را برای کاربر oracle می‌بینید که توسط پکیج oracle-rdbms-server-11gR2-preinstall اضافه گردیده شده‌اند.

از آنجاییه که پکیج پیش‌نیازی برای نرم‌افزار grid وجود ندارد ما خطوط زیر را به این فایل اضافه می‌کنیم:

vim /etc/security/limits.conf
grid    soft    nofile    1024
grid    hard    nofile    65536
grid    soft    nproc      2047
grid    hard    nproc   16384
grid    soft    stack   10240
grid    hard    stack   32768

ماژول pam login

با فعالسازی این ماژول یکسری سیاستهای پیش‌فرض برای تعداد sessionهای قابل لاگین در سیستم‌عامل و یکسری سیاستهای امنیتی اعمال میگردد توصیه میگردد این ماژول فعال نگردد تا در صورت رفتن سایت بر روی سایت disaster به مشکلات عدم لاگین به ماشین برنخورید.

برای فعالسازی این ماژول امنیتی فایل زیر را باز کنید:

vim /etc/pam.d/login

حال مقدار زیر را در این فایل قرار دهید:

session    required    pam_limits.so

غیرفعالسازی SELINUX

برای غیرفعالسازی SELINUX در وضعیت کنونی سیستم‌عامل ابتدا باید وضعیت کنونی را پیدا کنیم:

getenforce

اگر در حالت Enforcing بود از دستور زیر برای غیرفعالسازی این ماژول استفاده میکنیم:

setenforce 0

با اجرا این دستور SELINUX در وضعیت کنونی سیستم‌عامل به حالت Permissive می‌رود

برای غیرفعالسازی اجرای خودکار SELINUX در اجرای مجدد سیستم‌عامل باید فایل پیکربندی زیر را ویرایش کنیم:

vim /etc/selinux/config

بر روی ابتدای کامه enforcing کرسر ویرایشگر را متوقف میکنیم و با کلیدهای [shift + r] ما شروع به عمل replace میکنیم و با نوشتن ۴ کاراکتر اول disa و زدن کلیدهای ترکیبی control + p به ویرایشگر vim می‌گوییم که از متن بالای فایل text اگر کلمه مشابه‌ای وجود داشت به جای این کلمه قرار بده، و با زدن دکمه space کلمه آخر را پاک میکنیم.

کپی کردن فایل‌های نصب

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

فایلهای نصب را در دایکتوری زیر به هر طریق ممکنی کپی میکنیم:

ll /usr/local/src

برای نصب پایگاه‌داده اوراکل نسخه ۱۱.۲.۰.۴.۰ به همراه زیرساخت گرید فایلهای زیر مورد نیاز است

p13390677_112040_Linux-x86-64_1of7.zip
p13390677_112040_Linux-x86-64_2of7.zip
p13390677_112040_Linux-x86-64_3of7.zip

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

نصب پکیج rlwrap

برای اینکه در محیط شل لینوکس با ابزارهای تحت فرمان اوراکل بهتر کار کنید ابزار زیر می‌تواند به شما کمک زیادی در استفاده از تاریخچه دستورات وارد شده از طریق کیبرد و پاک کردن اشتباهات تایپی نماید:

https://github.com/hanslub42/rlwrap

نکته: تیم SQL Developer یک ابزار تحت کامند به نام SQLcl توسعه داده که ویژگی‌های فراوانی در مقابل ابزار SQL*Plus به همراه امکان ذخیره تاریخچه دستورات داره. همچنین نسخه جدید SQL*Plus در پایگاه‌داده 12cR2 نیز دارای امکان ذخیره تاریخچه دستورات است.

بعد از دانلود نسخه باینری این پکیج برای سیستم‌عامل نصب شده با دستور زیر آن را به صورت آفلاین نصب خواهیم کرد:

rpm -Uvh rlwrap-0.42-1.el6.x86_64.rpm

انتقال فایلهای نصاب grid

فایلهای نصب زیرساخت grid را به دایرکتوری home کاربر مرتبط انتقال می‌دهیم و مالکیت فایلها را برای یک نصب استاندارد تغییر می‌دهیم:

mv p13390677_112040_Linux-x86-64_3of7.zip /home/grid/
chown grid:oinstall /home/grid/p13390677_112040_Linux-x86-64_3of7.zip

خارج کردن فایل نصاب grid از حالت فشرده

هم‌اکنون باید فایل مرتبط برای نصب زیرساخت grid را از حالت فشرده خارج کنیم:

su -l grid
unzip p13390677_112040_Linux-x86-64_3of7.zip

برای اطمینان از اینکه مالکیت فایل مربوط تغییر پیدا کرده است ماکیت فایل را چک میکنیم:

stat -c %U p13390677_112040_Linux-x86-64_3of7.zip

پیکربندی bash profile کاربر grid

فایل bash_profile را باز میکنیم

vim .bash_profile

مقادیر زیر را در انتهای فایل bash_profile کاربر grid اضافه میکنیم:

export ORACLE_SID=+ASM; export ORACLE_SID
export ORACLE_BASE=/u01/app/grid; export ORACLE_BASE
export ORACLE_HOME=/u01/app/grid/product/11.2.0/grid; export ORACLE_HOME
export PATH=$ORACLE_HOME/bin:$PATH; export PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH

انتقال فایلهای نصاب oracle

فایلهای نصب oracle db را به دایرکتوری home کاربر مرتبط انتقال می‌دهیم و مالکیت فایلها را برای یک نصب استاندارد تغییر می‌دهیم:

mv p13390677_112040_Linux-x86-64_*.zip /home/oracle/
chown oracle:oinstall /home/oracle/p13390677_112040_Linux-x86-64_*.zip

خارج کردن فایل نصاب oracle از حالت فشرده

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

su -l oracle
unzip p13390677_112040_Linux-x86-64_1of7.zip
unzip p13390677_112040_Linux-x86-64_2of7.zip

برای اطمینان از اینکه مالکیت فایل مربوط تغییر پیدا کرده است ماکیت فایل را چک میکنیم:

stat -c %U p13390677_112040_Linux-x86-64_1of7.zip
stat -c %U p13390677_112040_Linux-x86-64_2of7.zip

پیکربندی bash profile کاربر oracle

فایل bash_profile را باز میکنیم

vim .bash_profile

مقادیر زیر را در انتهای فایل bash_profile کاربر oracle اضافه میکنیم:

export ORACLE_SID=***‹oracleSID ≈ orcl›***; export ORACLE_SID
export ORACLE_BASE=/u02/app/oracle; export ORACLE_BASE
export ORACLE_HOME=/u02/app/oracle/product/11.2.0/dbhome_1; export ORACLE_HOME
export PATH=$ORACLE_HOME/bin:$PATH; export PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH

اسکن کنترلرهای SCSI

بعد از اضافه کردن دیسکها به صورت hot-plug چون در لینوکس کنترلرها هنوز آپدیت نشده‌اند پس دیسک‌های جدید شناسایی نمیگردند. برای اسکن دیسکها از دستور زیر به تعداد scsi hostهامون استفاده میکنیم:

echo '- - -' > /sys/class/scsi_host/host0/scan
echo '- - -' > /sys/class/scsi_host/host1/scan
echo '- - -' > /sys/class/scsi_host/host2/scan

حال اگر لیست دیوایس‌ها را بگیریم دیسکهای جدید را مشاهده خواهیم کرد:

[root@taban src]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   15G  0 disk
├─sda1   8:1    0   11G  0 part /
└─sda2   8:2    0    4G  0 part [SWAP]
sdb      8:16   0   10G  0 disk
sdc      8:32   0   10G  0 disk
sdd      8:48   0   10G  0 disk
sde      8:64   0   10G  0 disk
sr0     11:0    1 1024M  0 rom

پارتیشن‌بندی دیسک‌های ASM

برای پارتیشن‌بندی دیسکهای ASM می‌توان از ابزار fdisk برای پارتیشنهایی با سایز حداکثر ۲ ترابایت استفاده کرد.

برای این منظور:

# ls /dev/sd*
# fdisk /dev/sdb
# fdisk /dev/sdc
# fdisk /dev/sdd
# fdisk /dev/sde

در هر مرحله باید موارد زیر را انجام داد:

n -> p -> 1 -> [enter] -> [enter] -> w

آماده‌سازی ASM

برای آماده‌سازی ASM از دستور زیر در شل کاربر root استفاده می‌کنیم:

# oracleasm init

پیکربندی ASM

برای پیکربندی ASM از دستور زیر استفاده می‌کنیم و مقادیر ورودی را وارد میکنیم:

# oracleasm configure -i
● (grid,asmdba,y,y)

خروجی:

[root@shafaq src]# oracleasm configure -i
Configuring the Oracle ASM library driver.

This will configure the on-boot properties of the Oracle ASM library
driver.  The following questions will determine whether the driver is
loaded on boot and what permissions it will have.  The current values
will be shown in brackets ('[]').  Hitting <ENTER> without typing an
answer will keep that current value.  Ctrl-C will abort.

Default user to own the driver interface []: grid
Default group to own the driver interface []: asmdba
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]: y
Writing Oracle ASM library driver configuration: done

ساخت دیسکهای ASM

هم اکنون به مرحله ایجاد دیسکهای ASM رسیده‌ایم.

برای ایجاد یک نظم در لیبل‌گذاری دیسکهای دیتا(DATA) را با حروف DAT و دیسکهای Flash Recovery Area را با لیبل FRA و در صورت نیاز دیسکهای Oracle Cluster Registry را با لیبل OCR (در محیط کلاستر) مشخص میکنیم.

[root@taban src]# oracleasm createdisk DAT00 /dev/sdb1
Writing disk header: done
Instantiating disk: done
[root@taban src]# oracleasm createdisk DAT01 /dev/sdc1
Writing disk header: done
Instantiating disk: done
[root@taban src]# oracleasm createdisk FRA00 /dev/sdd1
Writing disk header: done
Instantiating disk: done
[root@taban src]# oracleasm createdisk FRA01 /dev/sde1
Writing disk header: done
Instantiating disk: done
[root@taban src]# oracleasm listdisks
DAT00
DAT01
FRA00
FRA01

آغاز نصب Grid

با کاربر grid از طریق mobaxterm به سیستم‌عامل‌ها SSH میزنیم (ابزار mobaxterm به طور خودکار ssh x forwarding را انجام میدهد و displayرا در سمت کلاینت تنظیم میکند)

حال به پوشه Extract شده می‌رویم و اسکریپت نصاب را اجرا میکنیم

[grid@shafaq grid]$ pwd
/home/grid/grid
[grid@shafaq grid]$ ./runInstaller

به نصاب Oracle Grid Infrastructure خوش آمدید

مرحله اول نصاب گرید

به شدت توسط اوراکل توصیه شده که جهت گرفتن آخرین آپدیت‌ها، PSUها و پچ‌های پیشنهاد شده برای نسخه در حال نصب اطلاعات اکانتی که با آن محصول را خریداری کرده‌اید وارد کنید.

در صورت نیاز به Proxy از دکمه‌ی Proxy Settings استفاده کنید:

اگر آپدیتها را به صورت آفلاین در اختیار دارید از گزینه دوم استفاده کنید:

و در صورتی که از ۲ گزینه بالا استفاده نمی‌کنید گزینه سوم برای شماست:

مرحله دوم نصاب گرید

در این مرحله گزینه Configure Oracle Grid Infrastructure for a Standalone Server را انتخاب میکنیم:

مرحله سوم نصاب گرید

در این مرحله زبانی را که میخواهید اینترفیس محصول (متن پیغام‌ها و ...) داشته باشد را انتخاب کنید:

مرحله چهارم نصاب گرید

در این مرحله باید دیسک گروهی ایجاد و آن را جهت شناسایی به نصاب grid برای راه‌اندازی Oracle ASM یا همان Oracle Restart معرفی کنیم:

ما ۳ سطح Disk mirroring در asm داریم

  • External = در جهت mirroring هیچ عملی انجام نمیدهد
  • Normal = یک لایه mirroring انجام میدهد یعنی از هر فایل ۲ تا میسازد (هر ۲ تا دیسک ۱ دیسک گروه ساخته میگردد)
  • High = دو لایه mirroring انجام میدهد یعنی از هر فایل ۳ تا میسازد (هر ۳ تا دیسک ۱ دیسک گروه ساخته میگردد)

نکته: اگر در حال نصب کلاستر اوراکل Oracle RAC باشید موقع ایجاد OCR در حقیقت Normal سه دیسک و High پنج دیسک است.

مرحله پنجم نصاب گرید

برای ادمین ASM با نقش SYSASM و مانیتور کردن ASM با کاربر ASMSNMP پسوردهای موردنیاز را وارد کنید:

مرحله ششم نصاب گرید

در این مرحله باید گروه‌هایی که میخواهید مجوز os auth را برای هرکاربر مدنظر OSASM, OSDBA, OSOPER داشته باشند را انتخاب کنید:

مرحله هفتم نصاب گرید

چون ما در bash_profile متغیرهای محیطی را به صورت صحیح پیکربندی کرده‌ایم نصاب متغیرها را تشخیص میدهد و مقادیر این مرحله را خودکار پر میکند.

مرحله هشتم نصاب گرید

محل ذخیره فایل XML ای که مشخصات محصول نصب شده همراه با جزییات در این محل به صورت فهرست(Inventory) نوشته میشود. ۱۵۰ کیلوبایت برای هر محصول مورد نیاز است!

چک نهایی و خلاصه اطلاعات

در این مرحله تمام گزینه‌های انتخاب شده به شما در یک فهرست نمایش داده می‌شود اگر موردی صحیح نمی‌باشد نسبت به رفع آن اقدام کنید:

اگر همه چیز صحیح است بر روی دکمه Install کلیک کنید:

در انتهای نصب از شما خواسته می‌شود ۲ اسکریپت زیر را با کاربر root اجرا نمایید:

یک ترمینال با کاربر root باز میکنیم:

[root@shafaq ~]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
[root@shafaq ~]# /u01/app/grid/product/11.2.0/grid/root.sh
Performing root user operation for Oracle 11g

The following environment variables are set as:
    ORACLE_OWNER= grid
    ORACLE_HOME=  /u01/app/grid/product/11.2.0/grid

Enter the full pathname of the local bin directory: [/usr/local/bin]:
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /u01/app/grid/product/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
LOCAL ADD MODE
Creating OCR keys for user 'grid', privgrp 'oinstall'..
Operation successful.
LOCAL ONLY MODE
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4664: Node shafaq successfully pinned.
Adding Clusterware entries to upstart

shafaq     2018/07/20 23:17:08     /u01/app/grid/product/11.2.0/grid/cdata/shafaq/backup_20180720_231708.olr
Successfully configured Oracle Grid Infrastructure for a Standalone Server

تمام این مراحل تا انتهای نصب grid را بر روی هر ۲ ماشین انجام میدهیم.

ساخت دیسک گروه FRA

در شل کاربر grid ابزار asmca را فراخوانی میکنیم:

[grid@shafaq ~]$ asmca

ساخت دیسک گروه FRA را با AU سایز ۴ کیلوبایت انجام می‌دهیم:

حال از ابزار asmca خارج می‌شویم:

پاک کردن فایل‌های اضافی

بعد از اتمام نصب Oracle Grid Infrastructre فایلهای نصب Extract شده و فایل فشرده نصب را پاک می‌کنیم:

[grid@shafaq ~]$ ll
total 1177020
drwxr-xr-x. 7 grid oinstall       4096 Aug 27  2013 grid
drwxr-xr-x. 2 grid oinstall       4096 Jul 20 22:04 logs
drwxr-xr-x. 3 grid oinstall       4096 Jul 20 22:30 oradiag_grid
-rw-r--r--. 1 grid oinstall 1205251894 Jul 10 18:54 p13390677_112040_Linux-x86-64_3of7.zip
[grid@shafaq ~]$ rm -rf p13390677_112040_Linux-x86-64_3of7.zip
[grid@shafaq ~]$ rm -rf /home/grid/grid/
[grid@shafaq ~]$ pwd
/home/grid
[grid@shafaq ~]$

چک کردن دیسک‌ها

در حال حاضر ASM Instance ما آماده است:

[grid@shafaq ~]$ . oraenv
ORACLE_SID = [+ASM] ?
The Oracle base remains unchanged with value /u01/app/grid
[grid@shafaq ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  ONLINE       shafaq
ora.FRA.dg
               ONLINE  ONLINE       shafaq
ora.LISTENER.lsnr
               ONLINE  ONLINE       shafaq
ora.asm
               ONLINE  ONLINE       shafaq                   Started
ora.ons
               OFFLINE OFFLINE      shafaq
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       shafaq
ora.diskmon
      1        OFFLINE OFFLINE
ora.evmd
      1        ONLINE  ONLINE       shafaq

در آخر من با ابزار ASMCMD میتونم دیسک گروه‌های ایجاد شده رو چک کنم تا مطمئن بشم تمام دیسک گروه‌ها در حال اجرا هستند:

[grid@shafaq ~]$ asmcmd
ASMCMD> lsdg
State    Type    Rebal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  EXTERN  N         512   4096  4194304     20472    20376                0           20376              0             N  DATA/
MOUNTED  EXTERN  N         512   4096  4194304     20472    20384                0           20384              0             N  FRA/
ASMCMD> lsdsk -p
Group_Num  Disk_Num      Incarn  Mount_Stat  Header_Stat  Mode_Stat  State   Path
        1         0  3916015271  CACHED      MEMBER       ONLINE     NORMAL  /dev/oracleasm/disks/DAT00
        1         1  3916015272  CACHED      MEMBER       ONLINE     NORMAL  /dev/oracleasm/disks/DAT01
        2         0  3916015274  CACHED      MEMBER       ONLINE     NORMAL  /dev/oracleasm/disks/FRA00
        2         1  3916015273  CACHED      MEMBER       ONLINE     NORMAL  /dev/oracleasm/disks/FRA01
ASMCMD>

آغاز نصب دیتابیس Oracle

با کاربر oracle وارد سیستم‌عامل می‌شویم. به دایرکتوری فایل‌های نصاب پایگاه داده تغییر مسیر می‌دهیم و نصاب دیتابیس Oracle را اجرا میکنیم:

مرحله اول نصاب اوراکل

در صورتی که اطلاعات لایسنس خریداری شده را دارید در این مرحله وارد کنید:

اگر نیازی به دریافت آپدیت ندارید و یا در یک محیط آزمایشی هستید تیک گزینه I wish to receive ... را بردارید و بر روی Next کلیک کنید:

در این پنجره بر روی Yes کلیک کنید تا خطرات دریافت نکردن آپدیتهای امنیتی را پذیرفته باشید

مرحله دوم نصاب اوراکل

به توضیحات نصاب Grid مراجعه کنید:

مرحله سوم نصاب اوراکل

در این مرحله ۳ گزینه وجود دارد که ما گزینه دوم را انتخاب می‌کنیم:

Create and configure a database - Choose this option to create a new database along with sample schemas. 

Install database software only - Choose this option to install only the database binaries. To configure the database, you must run Oracle Database Configuration Assistant after the software installation.

Upgrade an existing database - Choose this option to upgrade an existing database. This option installs the software binaries in a new Oracle home. At the end of the installation, you can upgrade the existing database.

مرحله چهارم نصاب اوراکل

Single Instance Database Installation - This option installs the database and the listener. 

Oracle Real Application Clusters Database installation - This option installs Oracle Real Application Clusters.

Oracle RAC One Node Database Installation - This option installs Oracle RAC One Node database.

Note: Oracle RAC One Node is only supported with Oracle Clusterware.

در این مرحله گزینه اول را انتخاب می‌کنیم

مرحله پنجم نصاب اوراکل

در این مرحله زبانی را که میخواهید اینترفیس محصول (متن پیغام‌ها و ...) داشته باشد را انتخاب کنید:

مرحله ششم نصاب اوراکل

در این مرحله با توجه به لایسنس و نسخه مورد استفاده گزینه مدنظر را از بین گزینه‌های زیر انتخاب کنید:

Select Database Edition 

Select the database edition you want to install and click Next.

Enterprise Edition - This installation type is designed for enterprise-level applications. It is engineered for mission-critical, high-security online transaction processing (OLTP) and data warehousing environments. If you select this installation type, then all separately licensable Enterprise Edition options are installed.

Standard Edition - This installation type is designed for department or workgroup-level applications and for small and medium-sized enterprises (SMEs). It is engineered to provide core relational database management services and options. It installs an integrated set of management tools, full distribution, replication, Web features, and facilities for building business-critical applications.

Standard Edition One (Desktop and Single Instance Installations Only) - This installation type is designed for department, workgroup-level, or web applications. From single-server environments for small business to highly distributed branch environments, Oracle Database Standard Edition One includes all the facilities necessary to build business-critical applications.

Personal Edition (Microsoft Windows Operating Systems Only) - This installation type installs the same software as the Enterprise Edition installation type, with the exception of the management packs. However, it supports only a single-user development and deployment environment that requires full compatibility with Enterprise Edition and Standard Edition. Oracle RAC is not installed with Personal Edition.

If you click Select Options, then you are given an option to select or deselect the products from the components list. Click OK.

Note: The Select Option button is enabled, only if you select Enterprise Edition installation type.

به دلیل آنکه ما قصد راه‌اندازی Oracle Data Guard را داریم و این ویژگی تنها در نسخه Enterprise Edition فعال است ما گزینه EE را انتخاب می‌کنیم.

برای مقایسه ویژگی‌های این نسخه‌ها به لینک زیر مراجعه کنید:

https://docs.oracle.com/cd/E11882_01/license.112/e47877/editions.htm

من برای کم کردن حجم فایلهای نصب شده بر روی Select Options کلیک میکنم و تمام گزینه‌ها را از حالت انتخاب خارج میکنم. شما اگر نیاز به هر کدام از این ویژگی‌ها دارید تیک مرتبط با آن را فعال نگه دارید.

مرحله هفتم نصاب اوراکل

چون ما در bash_profile متغیرهای محیطی را به صورت صحیح پیکربندی کرده‌ایم نصاب متغیرها را تشخیص میدهد و مقادیر این مرحله را خودکار پر میکند.

چک نهایی و خلاصه اطلاعات

در این مرحله تمام گزینه‌های انتخاب شده به شما در یک فهرست نمایش داده می‌شود اگر موردی صحیح نمی‌باشد نسبت به رفع آن اقدام کنید:

نکته: اگر به مشکل کمبود فضا برخورد کردید ۲ فایل فشرده نصب را از دایکتوری home کاربر oracle‌ پاک کنید.

اگر همه چیز صحیح است بر روی دکمه Install کلیک کنید:

در انتهای نصب از شما خواسته می‌شود اسکریپت زیر را با کاربر root اجرا نمایید:

خروجی:

[root@shafaq ~]# /u02/app/oracle/product/11.2.0/dbhome_1/root.sh
Performing root user operation for Oracle 11g

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u02/app/oracle/product/11.2.0/dbhome_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
[root@shafaq ~]#

پایان نصاب اوراکل

پاک کردن فایل‌های اضافی

بعد از اتمام نصب Oracle Grid Infrastructre فایلهای نصب Extract شده و فایل فشرده نصب را پاک می‌کنیم:

[oracle@shafaq database]$ cd ~
[oracle@shafaq ~]$ pwd
/home/oracle
[oracle@shafaq ~]$ rm -rf database/
[oracle@shafaq ~]$
[oracle@taban ~]$ rm -rf p13390677_112040_Linux-x86-64_1of7.zip
[oracle@taban ~]$ rm -rf p13390677_112040_Linux-x86-64_2of7.zip
[oracle@taban ~]$ pwd
/home/oracle
[oracle@taban ~]$

تمام این مراحل تا انتهای نصب oracle database را بر روی هر ۲ ماشین انجام میدهیم.

نکته: توصیه میکنم تا اینجای کار و قبل از ادامه مراحل یک Snapshot از ماشینها بگیرید.