ESC را فشار دهید تا بسته شود

زمیوس آموزش، یادگیری و سرگرمی

آموزش نصب Oracle Database 21c در حالت Silent روی Oracle Linux 8

نصب Oracle Database 21c روی Oracle Enterprise Linux 8 یکی از رایج‌ترین سناریوها برای راه‌اندازی یک دیتابیس پایدار و استاندارد در محیط‌های سازمانی است.

اگر بخواهید نصب را بدون اجرای رابط گرافیکی انجام دهید، بهترین روش استفاده از Silent Mode است؛ روشی سریع، حرفه‌ای و مناسب برای سرورها و محیط‌های عملیاتی.

در این مقاله آموزش Oracle در بخش آموزش Oracle Admin، مراحل آماده‌سازی سیستم‌عامل، نصب پیش‌نیازها، تنظیم پارامترهای کرنل، ساخت یوزر و گروه‌های موردنیاز، غیرفعال‌سازی Transparent HugePages و در نهایت آماده‌سازی مسیر نصب Oracle Database 21c را بررسی می‌کنیم.

در این مقاله شما می خوانید

پیش‌نیازها و فایل‌های مورد نیاز

برای نصب Oracle Database 21c در OEL8 به بسته نرم‌افزاری اصلی دیتابیس نیاز دارید. این فایل معمولاً با نام زیر ارائه می‌شود:

				
					LINUX.X64_213000_db_home.zip

				
			

همچنین بهتر است قبل از شروع نصب، مستندات رسمی Oracle برای نسخه ۲۱c را نیز در دسترس داشته باشید تا در صورت نیاز بتوانید تنظیمات را با مرجع اصلی مقایسه کنید.

مرحله اول: آماده‌سازی سیستم‌عامل

تنظیمات اولیه سیستم‌عامل باید با کاربر root انجام شود. برای ورود به حساب root از دستور زیر استفاده کنید:

				
					su - root

				
			

تنظیم فایل hosts

برای اینکه سرور به‌درستی توسط Oracle شناسایی شود، فایل /etc/hosts باید شامل نام کامل دامنه باشد. فرمت مناسب به این شکل است:

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

				
			

مثال:

				
					۱۹۲.۱۶۸.۱۲۲.۱ oel8 oel8.dbaora.com

				
			

تنظیم hostname

نام میزبان را نیز بهتر است به شکل کامل تنظیم کنید:

				
					hostnamectl set-hostname oel8.dbaora.com --static

				
			

به‌روزرسانی سیستم‌عامل

پیشنهاد می‌شود قبل از نصب Oracle، بسته‌های سیستم‌عامل را به‌روز کنید:

				
					dnf update

				
			

مرحله دوم: نصب پیش‌نیازهای Oracle

برای نصب Oracle Database باید تعدادی گروه، کاربر، پکیج و تنظیمات کرنل ایجاد شود. این کار را می‌توان به دو روش انجام داد:

  1. خودکار
  2. دستی

روش خودکار

اگر بخواهید همه چیز به‌صورت خودکار تنظیم شود، کافی است بسته زیر را نصب کنید:

				
					dnf install oracle-database-preinstall-21c

				
			

این بسته کارهای مهمی مثل موارد زیر را انجام می‌دهد:

  • نصب بسته‌های مورد نیاز
  • ساخت گروه‌های سیستمی لازم
  • ایجاد کاربر oracle
  • تنظیم پارامترهای کرنل
  • تنظیم limits کاربر
  • اعمال برخی تنظیمات بوت
  • تنظیمات شبکه
  • غیرفعال‌سازی Transparent HugePages
  • غیرفعال‌سازی defrag

گزارش جزئیات این تغییرات معمولاً در مسیر زیر ذخیره می‌شود:

				
					/var/log/oracle-database-preinstall-21c/backup/<DATE>/orakernel.log

				
			

روش دستی

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

نصب بسته‌های مورد نیاز

بسته‌های زیر برای نصب Oracle Database 21c ضروری هستند:

				
					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

				
			

بسته‌های اختیاری:

				
					dnf install -y ipmiutil
dnf install -y libnsl2
dnf install -y libnsl2-devel
dnf install -y libvirt-libs
dnf install -y net-tools
dnf install -y nfs-utils

				
			

مرحله سوم: ساخت گروه‌های لازم

برای Oracle باید چند گروه سیستمی ایجاد شود:

				
					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

				
			

مرحله چهارم: ایجاد کاربر Oracle

کاربر دیتابیس را به این شکل ایجاد کنید:

				
					useradd -u 54321 -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba oracle

				
			

سپس برای آن رمز عبور تعیین کنید:

				
					passwd oracle

				
			

مرحله پنجم: تنظیم پارامترهای کرنل

Oracle برای عملکرد درست به تعدادی تنظیم خاص در کرنل نیاز دارد. این پارامترها را در فایل زیر قرار دهید:

				
					/etc/sysctl.d/99-oracle-database-preinstall-21c-sysctl.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

				
			

سپس تنظیمات را اعمال کنید:

				
					/sbin/sysctl -p

				
			

مرحله ششم: تنظیم محدودیت‌های کاربر oracle

در فایل زیر:

				
					/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

				
			

سپس تنظیمات را اعمال کنید:

				
					/sbin/sysctl -p

				
			

مرحله هفتم: غیرفعال‌سازی Transparent HugePages و Defrag

طبق توصیه Oracle، بهتر است برای جلوگیری از مشکلات احتمالی عملکرد، Transparent HugePages غیرفعال شود. این کار از طریق افزودن پارامتر زیر به فایل grub انجام می‌شود:

				
					transparent_hugepage=never

				
			

نمونه تنظیم در /etc/default/grub:

				
					GRUB_CMDLINE_LINUX="crashkernel=auto resume=/dev/mapper/ol_oel8-swap rd.lvm.lv=ol_oel8/root rd.lvm.lv=ol_oel8/swap rhgb quiet numa=off transparent_hugepage=never"

				
			

بعد از اعمال تغییرات و ریبوت سرور، وضعیت را با این دستور بررسی کنید:

				
					cat /sys/kernel/mm/transparent_hugepage/enabled

				
			

اگر همه‌چیز درست باشد، خروجی مشابه زیر خواهد بود:

				
					always madvise [never]

				
			

مرحله هشتم: ساخت ساختار دایرکتوری Oracle

اکنون ساختار مسیرهای نصب را ایجاد کنید:

  • ORACLE_BASE/ora01/app/oracle
  • ORACLE_HOME/ora01/app/oracle/product/21.3.0.0/db_1

دستورات:

				
					mkdir -p /ora01/app/oracle/product/21.3.0.0/db_1
chown oracle:oinstall -R /ora01

				
			

مرحله نهم: غیرفعال‌سازی فایروال

در برخی سناریوهای نصب اولیه، برای جلوگیری از اختلال در ارتباطات داخلی Oracle، فایروال موقتاً غیرفعال می‌شود:

				
					systemctl stop firewalld
systemctl disable firewalld

				
			

مرحله دهم: تنظیم فایل bash_profile برای کاربر oracle

فایل زیر را ویرایش کنید:

				
					/home/oracle/.bash_profile

				
			

و تنظیمات محیطی Oracle را اضافه کنید:

				
					# Oracle Settings
export TMP=/tmp

export ORACLE_HOSTNAME=oel8.dbaora.com
export ORACLE_UNQNAME=ORA21C
export ORACLE_BASE=/ora01/app/oracle
				
			

در ادامه معمولاً متغیر ORACLE_HOME و چند متغیر مهم دیگر نیز تعریف می‌شود تا محیط برای نصب Silent آماده باشد.

سوالات متداول درباره نصب Oracle Database 21c در حالت Silent

نصب Silent روشی است که در آن Oracle Database بدون رابط گرافیکی و با استفاده از فایل پاسخ و تنظیمات از پیش تعیین‌شده نصب می‌شود.

Oracle توصیه می‌کند Transparent HugePages غیرفعال شود تا از مشکلات احتمالی عملکرد و ناپایداری در سیستم جلوگیری شود.

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

مهم‌ترین موارد شامل hostname صحیح، پکیج‌های سیستمی موردنیاز، تنظیم kernel parameters، ساخت کاربر oracle و آماده‌سازی ORACLE_HOME و ORACLE_BASE است.

جمع‌بندی

در این مقاله، مراحل اصلی آماده‌سازی Oracle Linux 8 برای نصب Oracle Database 21c در حالت Silent را مرور کردیم. این مراحل شامل تنظیم hostname، نصب پکیج‌های موردنیاز، ایجاد گروه‌ها و کاربر Oracle، تنظیم کرنل، غیرفعال‌سازی Transparent HugePages و آماده‌سازی دایرکتوری‌های نصب بود.

اگر این پیش‌نیازها درست انجام شوند، نصب Oracle Database در حالت Silent بسیار سریع‌تر، استانداردتر و قابل‌اعتمادتر خواهد بود.

سؤالی درباره این مقاله داری؟

اگر نکته‌ای در این مقاله برات مبهم بود یا خواستی بیشتر بدونی، همین حالا برام بنویس تا دقیق و صمیمی پاسخت رو بدم — مثل یه گفت‌وگوی واقعی 💬

برو به صفحه پرسش و پاسخ

میثم راد

من یه برنامه نویسم که حسابی با دیتابیس اوراکل رفیقم! از اونایی ام که تا چیزی رو کامل نفهمم،ول کن نیستم، یادگرفتن برام مثل بازیه، و نوشتن اینجا کمک می کنه تا چیزایی که یاد گرفتم رو با بقیه به شریک بشم، با هم پیشرفت کنیم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *