ºìÁªLinuxÃÅ»§
Linux°ïÖú

ÔÚlinuxÏ°²×°0racle 10gµÄ¼èÄÑÖ®ÂÃ

·¢²¼Ê±¼ä:2006-09-21 00:25:45À´Ô´:ºìÁª×÷Õß:Service
¡¡¡¡ÔÚlinuxÏ°²×°oracleÊÇÒ»¼þÁîÈËÉúηµÄÊÂÇ飬Æ临Ôӳ̶ÈÔ¶Ô¶³¬¹ý°²×°linux²Ù×÷ϵͳ±¾Éí¡£Èç¹ûÄܹ»½øÐгɹ¦µÄ°²×°oracle,ÄÇôͬʱҲ¾Í˳±ãÕÆÎÕÁËlinuxһЩ¼¼Êõ¡£±¾ÎĽéÉÜÔÚredhat linux Ï°²×°oracle 10g µÄ·½·¨¡£ÔÚÕâÀï˵Ã÷Ò»£¬Oracle 10gµÄgÊÇgrid µÄËõд£¬ÒâΪÍø¸ñ£¬Ä¿Ç°½ÏΪǰÑصÄÍøÂç¼ÆËã¼¼Êõ¡£

¡¡¡¡Oracle 10g ¶ÔÈíÓ²¼þµÄÒªÇ󶼷dz£µÄ¸ß£¬ËùÒÔÒªÍæתµÄ»°µÄ»¨²»ÉÙÒø×Ó¡£Ê×ÏÈÀ´¿´¿´Ëü¶ÔÓ²¼þµÄÒªÇó:ÄÚ´æ512Õ×(½¨Òé1G)£¬cpu Ö÷Ƶ2.0GÒÔÉÏ£¬Ó²ÅÌתËÙ7200תÒÔÉÏ(½¨ÒéʹÓÃscsiÓ²ÅÌ),ÒÀ´ËÌõ¼þ£¬ÎÒ¿´Âǫ̀·þÎñÆ÷²ÅÐС£Æä´ÎÊÇÈí¼þÒªÇó:ÔÚoracle ¹Ù·½µÄÎĵµÀ¶ÔÓÚx86ϵÁÐÖ§³ÖµÄ²Ù×÷ϵͳֻÓÐ3ÖÖ(radhat ES/AS 2.1(x86),redhat ES/AS 3(x86),unitedlinux1.0(x86) ),Èç¹ûÖ»ÓÐredhat 9Ò²ÊÇ¿ÉÒÔ°²×°µÄ£¬²»¹ýÒªÂé·³Ò»µãµã¡£µ±È»oracle 10gÐèÒª¸ü¶àµÄÈí¼þÄ£¿é²ÅÄܽøÐа²×°£¬ÕâЩÈí¼þÄ£¿éÎÒ½«ÔÚºóÃæÖðһ˵Ã÷¡£ÔÚ±¾ÀýÖУ¬Ê¹ÓÃRedHat ES 3(x86)×÷Ϊ²Ù×÷ƽ̨£¬²¢ÇÒ°²×°ÁËxwindow¡£

¡¡¡¡½ÓÏÂÀ´£¬ÎÒÃǼì²éÊÇ·ñ·ûºÏoracle 10g µÄ°²×°ÒªÇó£¬ÒÔ±í¸ñµÄÐÎʽÁгö¡£Ê×ÏÈÊÇÓ²¼þÇé¿ö¡£ÒÔrootµÇ¼ϵͳ£¬²¢ÇÒÆô¶¯x-window.Èç¹ûÓÃϱíÃüÁîÊä³öµÄÖµ´óÓÚ»òµÈÓÚ½¨ÒéÖµ£¬Çë¼ì²éÏîÄ¿ ÃüÁî/·½·¨ ½¨ÒéÖµ

¡¡¡¡ÄÚ´æ #grep MemTotal /proc/meminfo 512MB

¡¡¡¡½»»»·ÖÇø #grep SwapTotal /proc/meminfo 1GB

¡¡¡¡/tmpĿ¼¿ÕÏÐÇø #df -k /tmp 400MB

¡¡¡¡Ó²ÅÌ¿ÕÏпռä #df -k 4GB

¡¡¡¡¼ÌÐøÍùÏ£¬¼ì²éÈí¼þÐèÇ󡣶Ôredhat ES 3(x86)£¬ÐèÒªÈçϵÄÈí¼þ°ü:

¡¡¡¡• Gnu gcc package, gcc-3.2.3-2 or ¸ü¸ß

¡¡¡¡ÏÂÃæµÄ°üÒ²±ØÐë±»°²×°:¡¡¡¡

[code]?make-3.79
?binutils-2.11
?openmotif-2.2.2-16
?setarch-1.3-1
?compat-db-4.0.14.5
?compat-gcc-7.3-2.96.122
?compat-gcc-c++-7.3-2.96.122
?compat-libstdc++-7.3-2.96.122
?compat-libstdc++-devel-7.3-2.96.122[/code]

¡¡¡¡ÎªÁ˱£Ö¤ÏµÍ³Âú×ãÐèÇó£¬Ö´ÐÐÏÂÃæµÄ²½Öè¼ì²é°²×°µÄlinux°æ±¾ºÍ°²×°µÄÌ×¼þ¡£

¡¡¡¡¼ì²éÏîÄ¿ ÃüÁî/·½·¨ ½¨ÒéÖµ

¡¡¡¡Linux °æ±¾ #cat /etc/issue ES 3

¡¡¡¡ÒÑ°²×°µÄ°ü #rpm -q package_name °²×°ËùÐè°ü(ÉϱíËùÁÐ)

¡¡¡¡µ½ÕâÀïÎÒÃÇÒѾ­È«ÃæµÄ¼ì²éÁË°²×°oracle 10gËùÒªÇóµÄÈíÓ²¼þ»·¾³£¬½Ó×ÅÎÒÃǾÍҪΪ°²×°´´½¨×éºÍÓû§¡£

¡¡¡¡ÏÂÃæµÄ×éºÍÓû§±ØÐë´æÔÚ

[code]The oinstall group (the oracle inventory group)
The dba group (the OSDBA group)
The oracle user (the oracle owner)[/code]

¡¡¡¡Èç¹ûÉÏÃæµÄ×éºÍÓû§²»´æÔÚ£¬ÓÃÏÂÃæµÄ²½Öè´´½¨ËüÃÇ¡£

¡¡¡¡(1)ÏȲ鿴ÕâЩ×éºÍÓû§ÊÇ·ñ´æÔÚ:

[code]#grep oinstall /etc/group

#grep dba /etc/group[/code]

¡¡¡¡(2)´´½¨°²×°oracle ËùÐèµÄ×éºÍÓû§

[code]#groupadd oinstall

#groupadd dba

#useradd -g oinstall -G dba oracle[/code]

¡¡¡¡¼ì²éÒ»ÏÂoracle ÊÇ·ñÊôÓÚ×é oinstall ºÍ dba (#id oracle) ÔÙ¸øoracle ÉèÖÃÒ»¸öÓû§¿ÚÁî

¡¡¡¡#passwd oracle ÊäÈëÁ½´ÎÃÜÂë¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 1 ÌõÆÀÂÛ

  1. Service ÓÚ 2006-09-21 00:28:12·¢±í:

    ¡¡¡¡´´½¨°²×°ËùÐèµÄĿ¼ /u01/app/oracle (the oracle base directory), /u02/oradata (an optional default directory ),ÓÃϱíµÄÃüÁîÐÎʽ´´½¨Ëü.È»ºó¸Ä±äËüµÄĿ¼ȨÏÞ¡£

    ¡¡¡¡´´½¨Ä¿Â¼ ¸ü¸ÄȨÏÞ

    [code]#mkdir -p /u01/app/oracle #chown -R oracle:Oinstall /u01/app/oracle /u02/oradata

    #mkdir -p /u02/oradata #chmod -R 755 /u01/app/oracle /u02/oradata[/code]

    ¡¡¡¡ÅäÖÃÄں˲ÎÊý£¬Ï±íÊÇoracle ÍƼöµÄÄں˲ÎÊýÖµ£¬Çë²Î¿¼¡£

    [code]Parameter Value File
    semmsl
    semmns
    semopm
    semmni 250
    32000
    100
    128 /proc/sys/kernel/sem
    shmall 2097152 /proc/sys/kernel/shmall
    shmmax Half the size of physical memory /proc/sys/kernel/shmmax
    shmmni 4096 /proc/sys/kernel/shmmni
    file-max 65536 /proc/sys/fs/file-max
    ip_local_port_range 1024 65000 /proc/sys/net/ipv4/ip_local_port_range[/code]

    ¡¡¡¡È·±£µ±Ç°µÄ²ÎÊýÖµ´óÓÚ»òµÈÓÚÉϱíËùÁС£ÄÇôÔõÑù²é¿´ÕâЩ²ÎÊýÖµÄØ?ÓÃÃüÁî #/sbin/sysctl -a | grep <²ÎÊýÃû>£¬ÀýÈç²é¿´semmsl,Óà #/sbin/sysctl -a | grep sem,ÓàϵÄÓë´ËÀàËÆ¡£Öð¸ö²ì¿´ÕâЩ²ÎÊýÖµ£¬Èç¹û²ÎÊýÖµ²»Âú×ãÒªÇ󣬾ÍÐèÒªÐÞ¸ÄËüÃÇ¡£ÇëÍê³ÉÏÂÃæÕâЩ²½Öè

    ¡¡¡¡a.ÓÃÎı¾±à¼­Æ÷£¬´´½¨»òÕ߱༭/etc/sysctl.confÎļþ£¬Ìí¼Ó»òÐÞ¸ÄÈçϵÄÐÐ

    [code]kernel.shmall = 2097152
    kernel.shmmax = 2147483648
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    fs.file-max = 65536
    net.ipv4.ip_local_port_range = 1024 65000[/code]

    ¡¡¡¡b.¸Ä±äµ±Ç°Äں˲ÎÊýµÄÖµ£¬ÓÃÃüÁî #/sbin/sysctl -p À´ÊµÏÖ¡£

    ¡¡¡¡ÎªÁËÌá¸ßÔÚlinuxϵͳÉÏÔËÐÐÈí¼þµÄÐÔÄÜ£¬±ØÐë¶ÔoracleÓû§ÉèÖÃÏÂÁÐshell ÏÞ¶¨¡£

    [code]Shell Limit Item in limits.conf Hard Limit
    Maximum number of open file descriptors nofile 65536
    Maximum number of processes available to a single user nproc 16384[/code]

    ¡¡¡¡ÏÖÔÚ´´½¨ÕâЩÏÞ¶¨:

    ¡¡¡¡1.¼ÓÈëÏÂÃæµÄÐе½Îļþ/etc/security/limits.conf

    [code]* soft nproc 2047
    * hard nproc 16384
    * soft nofile 1024
    * hard nofile 65536[/code]

    ¡¡¡¡2. ¼ÓÈëÏÂÃæµÄÐе½Îļþ/etc/pam.d/login ,¼ÙÈçËü²»´æÔڵĻ°

    [code]session required /lib/security/pam_limits.so[/code]

    ¡¡¡¡3.¸ù¾Ýoracle Óû§µÄĬÈÏshell,¶ÔĬÈÏ shell start-upÎļþ×÷Èçϸı䣬Èç¹ûÊÇBourne, Bash, or Korn shell£¬Ð޸Ļ·¾³±äÁ¿/etc/profileÎļþÈçÏÂ:

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

    ¡¡¡¡Èç¹ûÊÇc shell£¬Ôò»·¾³±äÁ¿Îļþ /etc/csh.loginµÄÐÞ¸ÄÖµÈçÏÂ:

    [code]if ( $USER == "oracle" ) then
    limit maxproc 16384
    limit descriptors 65536
    endif[/code]

    ¡¡¡¡½ÓÏÂÀ´¹Ò½Ó¹âÅÌ£¬#mount /dev/cdrom /mnt/cdrom ¡£

    ¡¡¡¡ÒÔoracle Óû§ÃûµÇ¼ϵͳ£¬ÅäÖÃoracle Óû§µÄ»·¾³¡£ÒÔoracle ÕʺÅÓð²×°Æ÷À´°²×°oracle,µ«ÊÇ¿ªÊ¼ÔËÐа²×°Æ÷֮ǰ£¬»¹µÃÉ趨oracleÓû§µÄ»·¾³±äÁ¿£¬Òò´Ë±ØÐë:

    ¡¡¡¡¡ñÉèÖÃshell startupÎļþµÄumask Ϊ022

    ¡¡¡¡¡ñÉèÖÃDISPLAY, ORACLE_BASE, and ORACLE_SID µÄ»·¾³±äÁ¿¡£ÏÂÃæÕâЩ²½ÖèÊǶÔÕâЩ»·¾³±äÁ¿½øÐÐÉèÖõķ½·¨:

    ¡¡¡¡1¡¢¿ªÆôÒ»¸öÖն˻Ự

    ¡¡¡¡2¡¢È·ÈÏxwindow ÄÜÕý³£ÏÔʾ¡£#xhost +

    ¡¡¡¡3¡¢¸Ä±äÓû§Îªoracle. $ su - oracle

    ¡¡¡¡4¡¢¼ì²éoracleÓû§µÄĬÈÏshell. $echo $SHELL

    ¡¡¡¡5¡¢ÓÃÎı¾±à¼­Æ÷ÐÞ¸ÄoracleÓû§µÄ»·¾³±äÁ¿¡¡

    ¡¡¡¡¡ñbash shell on redhat

    ¡¡¡¡$vi .bash_profile

    ¡¡¡¡¡ñc shell

    ¡¡¡¡%vi .login

    ¡¡¡¡6¡¢°ÑÏÂÃæµÄÐвåÈëÉÏÃæ±à¼­µÄÎļþÖÐ

    ¡¡¡¡umask 022

    ¡¡¡¡7¡¢±£´æÎļþ²¢Í˳ö

    ¡¡¡¡8¡¢ÔËÐÐshell¿ªÊ¼½Å±¾:

    ¡¡¡¡¡ñBash shell on Red Hat $ . ./.profile

    ¡¡¡¡¡ñC shell % source ./.login

    ¡¡¡¡9¡¢ÉèÖû·¾³±äÁ¿

    ¡¡¡¡¡ñBash shell

    ¡¡¡¡$ ORACLE_BASE=/u01/app/oracle

    ¡¡¡¡$ ORACLE_SID=sales

    ¡¡¡¡$ export ORACLE_BASE ORACLE_SID

    ¡¡¡¡¡ñc shell

    ¡¡¡¡% setenv ORACLE_BASE /u01/app/oracle

    ¡¡¡¡% setenv ORACLE_SID sales

    ¡¡¡¡10¡¢È·ÈÏORACLE_HOME and TNS_ADMIN µÄ»·¾³±äÁ¿²»±»Óû§ÉèÖÃ

    ¡¡¡¡¡ñBash shell

    ¡¡¡¡$ unset ORACLE_HOME

    ¡¡¡¡$ unset TNS_ADMIN

    ¡¡¡¡¡ñc shell

    ¡¡¡¡% unsetenv ORACLE_HOME

    ¡¡¡¡% unsetenv TNS_ADMIN

    ¡¡¡¡11¡¢ÔÙ¼ìÑéÒ»ÏÂÉÏÃæÉ趨µÄ»·¾³±äÁ¿ÊÇ·ñÕýÈ·¡£

    ¡¡¡¡$ umask

    ¡¡¡¡$ env | more

    ¡¡¡¡½øÈë°²×°Æ÷(runInstaller)ËùÔÚµÄĿ¼ $ cd /tmp ÔËÐа²×° $ /mnt/cdrom/runInstaller £¬ÒÀÕÕÌáʾÍê³ÉÕû¸ö°²×°¡£