oruji.github.io
oruji.github.ioPersian Tutorials
ویرایش: 1396/11/13 19:23
A A

آموزش نصب اوراکل در اوبونتو

با توجه به اینکه شرکت اوراکل (Oracle) سیستم عامل اوبونتو (Ubuntu) را برای نصب اوراکل پشتیبانی نمی کند ولی این بدان معنا نیست که نباید و یا نمی توان این کار را کرد. آموزش مراحل نصب کامل در زیر به صورت کامل تست شده و جواب داده است.

نسخه های مورد استفاده

Oracle 11g Release 2 (R2) 64bit
Ubuntu 12.04 LTS 64bit

این آموزش بر روی این نسخه های لینوکس اوبونتو (Ubuntu) و اوراکل (Oracle) تست شده است. شاید بر روی نسخه های دیگر هم جواب بدهد، ولی تنها بر روی نسخه های گفته شده 100% تست شده است.

ساختن برخی کاربران و گروه های مورد نیاز در لینوکس اوبونتو (Ubuntu)

برای ساختن گروه ها و کاربران مورد نیاز کدهای زیر را اجرا کنید.

sudo groupadd oinstall sudo groupadd dba sudo mkdir -p /opt/oracle sudo useradd -g oinstall -G dba -d /opt/oracle -s /bin/bash oracle sudo passwd oracle sudo chown -R oracle:oinstall /opt/oracle

به روز رسانی پارامترهای kernel لینوکس

با دسترسی root مقادیر زیر را درون فایل /etc/sysctl.conf اضافه کرده و فایل را ذخیره کنید.

# # Oracle 11g # kernel.sem = 250 32000 100 128 kernel.shmall = 2097152 kernel.shmmni = 4096 # Replace kernel.shmmax with the half of your memory in bytes # if lower than 4Go minus 1 # 1073741824 is 1 GigaBytes kernel.shmmax=1073741824 # Try sysctl -a | grep ip_local_port_range to get real values 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 = 1048576 # Max value allowed, should be set to avoid IO errors fs.aio-max-nr = 1048576 # 512 * PROCESSES / what really means processes ? fs.file-max = 6815744 # To allow dba to allocate hugetlbfs pages # 1001 is your oinstall group, id. grep oinstall /etc/group will give this value vm.hugetlb_shm_group = 1001

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

sudo sysctl -p

با دسترسی root پارامترهای زیر را درون فایل /etc/security/limits.conf اضافه کرده و ذخیره کنید.

# Oracle oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240

خط زیر باید درون فایل /etc/pam.d/login وجود داشته باشد. این فایل را چک کرده در صورت نبودن این خط آن را اضافه کرده و ذخیره کنید.

session required pam_limits.so

مقادیر زیر را به انتهای فایل /etc/profile اضافه کرده و آن را ذخیره کنید.

if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi

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

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

sudo apt-get update sudo apt-get dist-upgrade

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

apt-get install alien autoconf automake autotools-dev binutils bzip2 doxygen elfutils expat gawk gcc gcc-multilib g -multilib ia32-libs ksh less lesstif2 lesstif2-dev lib32z1 libaio1 libaio-dev libc6-dev libc6-dev-i386 libc6-i386 libelf-dev libltdl-dev libmotif4 libodbcinstq4-1 libodbcinstq4-1:i386 libpth-dev libpthread-stubs0 libpthread-stubs0-dev libstdc 5 lsb-cxx make openssh-server pdksh rlwrap rpm sysstat unixodbc unixodbc-dev unzip x11-utils zlibc

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

با استفاده از دستورات زیر برخی کتاب خانه های مورد نیاز اوراکل را می بایست متصل کنید.

sudo ln -s /usr/lib/x86_64-linux-gnu /usr/lib64 sudo ln -sf /bin/bash /bin/sh sudo ln -s /usr/bin/awk /bin/awk sudo ln -s /usr/bin/rpm /bin/rpm sudo ln -s /usr/bin/basename /bin/basename sudo ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64

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

کپی فایل های اوراکل (Oracle)

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

unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip

دیگر تنظیمات در لینوکس

sudo su - oracle cd touch .bashrc ln -s .bashrc .bash_profile

خط زیر را درون فایل .bashrc قرار دهید.

umask 022

فایل .bashrc را با استفاده از دستور زیر اجرا کنید.

source .bashrc

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

sudo xhost

با استفاده از دستورات زیر درون کاربر oracle وارد شده، به درون مسیر اوراکل استخراج شده رفته و نصب اوراکل را آغاز کنید.

su - oracle export DISPLAY=:0 ./runInstaller

در مرحله نخست نصب اوراکل، تیک را برمی داریم و next می کنیم، چون که من پسورد پشتیبانی اوراکل ندارم.

oracle

در این مرحله تیک Create and Configure a database را زده next می کنیم.

oracle

تیک Server Class را زده next می کنیم.

oracle

تیک Single instance database installation را زده next می کنیم.

oracle

تیک Advanced install زده و next می کنیم.

oracle

زبان English را انتخاب کرده و next می کنیم.

oracle

تیک Enterprise Edition را زده و next می کنیم.

oracle

در این مسیر نصب اوراکل را مشخص می کنیم، که من مسیر پیشفرض را انتخاب می کردم.

oracle

این مرحله نیز باید به طور پیشفرض درست باشد.

oracle

تیک General Purpose / Transaction Processing را زده next می کنیم.

oracle

در این مرحله sid و global database name را مشخص کرده و next می کنیم.

oracle

تیک Automatic Memory Management باید زده باشد و در تب Character set همانطور که در عکس بعدی نشان داده شده است تیک Use Unicode AL32UTF8 را زده و next می کنیم.

oracle

تیک Use Database Control for database management را زده ولی بقیه موارد باید خالی گذاشته شود و next می کنیم.

oracle

تیک File System را زده و مقادیر پیشفرض را next می کنیم.

oracle

تیک Do not enable automated backups را زده و next می کنیم.

oracle

در این مرحله می توانید یک پسورد برای تمامی حساب ها استفاده کنید، که در پروژه های جدی پیشنهاد نمی شود.

oracle

مقادیر پیشفرض را next می کنیم.

oracle

تیک Ignore All را زده next می کنیم.

oracle

شاید با دیدن این خطا کمی متعجب و نگران شوید! ولی جای هیچ نگرانی ای نیست، چرا که ما منتظر این خطا بودیم. برای رفع این مشکل، پنجره خطا را دست نزنید، چرا که می بایست برخی تنظیمات را انجام داده و دوباره به آن برگردیم.

oracle

برای رفع error بالا، می بایست یک سری option را درون برخی از فایل های نصب شده اضافه کرد این تنظیمات به شرح زیر است

خط ۱۹۰ فایل

/opt/oracle/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk

$(MK_EMAGENT_NMECTL) -lnnz11

خط ۲۷۸ فایل

/opt/oracle/app/oracle/product/11.2.0/dbhome_1/bin/genorasdksh

OLIBS= ... -lagtsh -lorasdkbase

خط ۹۰ فایل

/opt/oracle/app/oracle/product/11.2.0/dbhome_1/srvm/lib/env_srvm.mk

PRODUCT=srvm

خط ۶۰ فایل

/opt/oracle/app/oracle/product/11.2.0/dbhome_1/srvm/lib/ins_srvm.mk

GETCRSHOME_LINKLINE= ... -Wl,--start-group $(OCRLIBS_DEFAULT) -Wl,--end-group $(OCRLIBS_DEFAULT) ...

خط 2150 فایل

/opt/oracle/app/oracle/product/11.2.0/dbhome_1/network/lib/env_network.mk

TNSLSNR_LINKLINE=... -Wl,--no-as-needed $(LLIBONS) ...

خط 2113 فایل

/opt/oracle/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/env_rdbms.mk

ORACLE_KERNEL_LIBS=...$(SPOBJS) -Wl,--no-as-needed $(LLIBSERVER)...

به مرحله نصب و پنجره error برگشته و retry کنید.

oracle

پنجره بعدی را ok کنید.

oracle

در این مرحله دستوراتی را که در پنجره به آن اشاره شده است را با دسترسی root اجرا کرده، سپس پنجره را ok کنید.

oracle

مراحل نصب اوراکل به پایان رسید، اکنون می توانید پنجره پایانی را close کنید.

oracle

مرورگر را باز کرده به آدرس زیر رفته، با دسترسی sysdba و کاربر sys وارد شوید.

http://127.0.0.1:1158/em

oracle

بعد از وارد شدن صفحه همانند شکل زیر را خواهید دید.

oracle

تبریک! اوراکل (Oracle) بر روی اوبونتو (Ubuntu) نصب شد!