1、Solaris10 安装Oracle11g汇总Solaris 10 系统安装Oracle数据库一、实验环境操作系统:Oracle Solaris 10 1/13 s10x_u11wos_24a X86 (64位)数据库版本:Oracle 11g R2 for x86 (64位)二、安装前准备工作1.内存要求最小内存:1G推荐内存:2G或更高bash-3.2# prtconf | grep Memory sizeMemory size: 8192 Megabytes2.交换分区要求物理内存:1G2G 交换分区:物理内存的1.5倍物理内存:2G-16G 交换分区:与物理内容大小相等物理内存:大于1
2、6G 交换分区:16G3.系统架构系统架构符合Oracle数据库软件要求bash-3.2# isainfo -kv64-bit amd64 kernel modules4.磁盘要求/tmp最少1G的空间bash-3.2# df -h /tmpFilesystem size used avail capacity Mounted onswap 15G 40K 15G 1% /tmp5.软件要求Oracle Database 11g Release 2 (11.2)要求的系统版本必须是U6以上,08年10月之后的版本。bash-3.2# uname -r5.10bash-3.2# cat /etc
3、/release Oracle Solaris 10 1/13 s10x_u11wos_24a X86 Copyright (c) 1983, 2013, Oracle and/or its affiliates. All rights reserved. Assembled 17 January 20136.系统补丁要求在Oracle Solaris 10操作系统上,安装Oracle Database 11g Release 2 (11.2),必须包含以下系统补丁:SUNWarcSUNWbtoolSUNWheaSUNWlibCSUNWlibmSUNWlibmsSUNWsprotSUNWtoo
4、SUNWi1ofSUNWi1cs (ISO8859-1)SUNWi15cs (ISO8859-15)SUNWxwfntSUNWcslbash-3.2# pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibms SUNWsprot SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfntsystem SUNWarc Lint Libraries (usr)system SUNWbtool CCS tools bundled with SunOSsystem SUNWhea SunOS Header Files
5、system SUNWi1of ISO-8859-1 (Latin-1) Optional Fontssystem SUNWlibC Sun Workshop Compilers Bundled libCsystem SUNWlibms Math & Microtasking Libraries (Usr)system SUNWsprot Solaris Bundled toolssystem SUNWtoo Programming Toolssystem SUNWxwfnt X Window System platform required fontsERROR: information f
6、or SUNWi1cs was not foundERROR: information for SUNWi15cs was not found对于提示“ERROR”的SUNWi1cs 与SUNWi15cs软件包,可从系统安装光盘中查找:“/cdrom/sol_10_113_x86/Solaris_10/Product”bash-3.2# pkgadd -d /cdrom/sol_10_113_x86/Solaris_10/Product SUNWi1csProcessing package instance from bash-3.2# pkgadd -d /cdrom/sol_10_113_
7、x86/Solaris_10/Product SUNWi15csProcessing package instance from 两个补丁都安装完后,再进行检查,无报错:bash-3.2# pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibms SUNWsprot SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfntsystem SUNWarc Lint Libraries (usr)system SUNWbtool CCS tools bundled with SunOSsystem SUNWhea
8、 SunOS Header Filessystem SUNWi15cs X11 ISO8859-15 Codeset Supportsystem SUNWi1cs X11 ISO8859-1 Codeset Supportsystem SUNWi1of ISO-8859-1 (Latin-1) Optional Fontssystem SUNWlibC Sun Workshop Compilers Bundled libCsystem SUNWlibms Math & Microtasking Libraries (Usr)system SUNWsprot Solaris Bundled to
9、olssystem SUNWtoo Programming Toolssystem SUNWxwfnt X Window System platform required fonts三、操作系统配置修改1.创建用户和组bash-3.2# groupadd oinstallbash-3.2# groupadd dbabash-3.2# useradd -d /export/home/oracle -m -s /bin/bash -g oinstall -G dba oraclebash-3.2# passwd -r files oracleNew Password:Re-enter new Pa
10、ssword:passwd: password successfully changed for oracle2.设置内核参数1)Oracle相关知识shared memory(共享内存段)一个内存区域,可以被不同的进程读取。Oracle使用它来构成SGA。Oracle使用以下三种方法来创建一个SGA区:使用单个共享内存段。使用连续多个共享内存段。使用多个不连续共享内存段。 Oracle优先使用第一种方法,如果成功,则继续初始化,不成功则使用第二种方法,再不成功则使用第三种方法。如果再不成功,则初始化失败,Oracle报告错误代码Semaphore可以看作一个标记。可以有On和Off两种状态。
11、Oracle使用semaphores来实现服务器进程对SGA区的存取控制。Shared memory 和semaphore 是Oracle在Unix上运行的重要资源。如果Oracle 实例得不到所需要的资源,实例启动就会失败。 参数对于运行一个Oracle实例的Solaris系统,改变/etc/system文件中的一些关于共享内存的参数,以使Oracle实例可以正常运行,如果有多个实例的话,还需根据下面方法重新计算某些值。shmmax含义:这个设置并不决定究竟Oracle数据库或者操作系统使用多少物理内存,只决定了最多可以使用的内存数目。这个设置也不影响操作系统的内核资源。 设置方法:0.5*
12、物理内存。如果物理内存为20G,则 0.520G10241024=10485760例子: Set shmsys:shminfo_shmmax=10485760shmmin含义:共享内存的最小大小。设置方法:一般都设置成为1。例子: Set shmsys:shminfo_shmmin=1shmseg含义:每个用户进程可以使用的最多的共享内存段的数目。 推荐值为20或者10。 例子:Set shmsys:shminfo_shmseg=20semmni含义:系统中semaphore identifierer的最大个数。推荐值为100或者128。 设置方法:把这个变量的值设置为这个系统上的所有Orac
13、le的实例的init.ora中的最大的那个processes的那个值加10。 例子:Set semsys:seminfo_semmni=100semmns含义:系统中semaphores的最大个数。设置方法:这个值可以通过以下方式计算得到:各个Oracle实例的initSID.ora里边的processes的值的总和(除去最大的Processes参数)最大的那个Processes210Oracle实例的个数。 详见下面“(semmns计算实例)”。例子:Set semsys:seminfo_semmns=200semmsl含义:一个set中semaphore的最大个数。设置方法:设置成为10所
14、有Oracle实例的InitSID.ora中最大的Processes的值。详见下面“(SEMMSL 计算实例)” .例子:Set semsys:seminfo_semmsl=-2002)修改/etc/system在以前的Solaris 发行版中,IPC 功能由内核可调参数来控制。要更改这些功能的缺省值,必须修改/etc/system文件并重新引导系统。采用Oracle安装手册需要配置参数set noexec_user_stack = 1set semsys:seminfo_semmni = 100set semsys:seminfo_semmns =processes2+10set semsy
15、s:seminfo_semmsl =processes+10set semsys:seminfo_semvmx = 32767set shmsys:shminfo_shmmax = 内存一半或者4294967295(4g)set shmsys:shminfo_shmmni = 100例子:bash-3.2# vi /etc/systemset noexec_user_stack=1set shmsys:shminfo_shmmax=4294967295set semsys:seminfo_semmni=100set semsys:seminfo_semmns=1024set semsys:se
16、minfo_semmsl=256set semsys:seminfo_semvmx=32767set shmsys:shminfo_shmmni=100但在solaris 10及以后的版本中,此方法不在建议3)资源控制根据Oracle安装手册需要配置参数set noexec_user_stack = 1set semsys:seminfo_semmni = 100set semsys:seminfo_semmns =processes2+10set semsys:seminfo_semmsl =processes+10set semsys:seminfo_semvmx = 32767set s
17、hmsys:shminfo_shmmax = 内存一半或者4294967295(4g)set shmsys:shminfo_shmmni = 100但在Solaris 10 之后,很多参数都过时或者取消,如下文所示:set noexec_user_stack = 1set semsys:seminfo_semmni 已过时 用project.max-sem-ids代替 默认 128 保持默认set semsys:seminfo_semmns 已删除set semsys:seminfo_semmsl 已过时用process.max-sem-nsems代替默认 512, 实际设置500+10 保持
18、默认设置set semsys:seminfo_semvmx 已删除set shmsys:shminfo_shmmax 已过时用project.max-shm-memory代替 默认物理内存的1/4 即4G,实际设置4G 保持默认set shmsys:shminfo_shmmni 已删除故在Solaris10及之后的版本,/etc/system只需修改一个参数即可:修改/etc/system,加入 set noexec_user_stack = 1 即可:Oracle 安装配置的内核参数主要是共享内存、信号量、消息队列3块内容。如要修改内核参数,采用如下操作(系统不用重启,且在系统重启后配置依旧
19、生效)先检查oracle用户的project配置bash-3.2# su - oracleOracle Corporation SunOS 5.10 Generic Patch January 2005-bash-3.2$ id -puid=100(oracle) gid=100(oinstall) projid=3(default)如果是default,则添加projd配置创建oracle用户的projectbash-3.2# projadd group.dbalogout在/etc/user_attr 文件添加一行bash-3.2# vi /etc/user_attroracle:proj
20、ect=group.dba修改内核参数bash-3.2# projmod -sK project.max-shm-memory=(privileged,4294967295,deny) group.dbabash-3.2# su - oracle-bash-3.2$ id -puid=100(oracle) gid=100(oinstall) projid=100(group.dba)-bash-3.2$ exit检查/etc/projectbash-3.2# cat /etc/projectsystem:0:user.root:1:noproject:2:default:3:group.st
21、aff:10:group.dba:100:project.max-shm-memory=(privileged,4294967295,deny)检查资源控制-bash-3.2$ prctl -n project.max-shm-memory -i process $process: 1786: -bashNAME PRIVILEGE VALUE FLAG ACTION RECIPIENTproject.max-shm-memory privileged 4.00GB - deny system 16.0EB max deny 3.配置Shell Limitsulimit 用于限制 shell
22、启动进程所占用的资源,支持以下各种类型的限制:所创建的内核文件的大小、进程数据块的大小、Shell 进程创建文件的大小、内存锁住的大小、常驻内存集的大小、打开文件描述符的数量、分配堆栈的最大大小、CPU 时间、单个用户的最大线程数、Shell 进程所能使用的最大虚拟内存。同时,它支持硬资源和软资源的限制。作为临时限制,ulimit 可以作用于通过使用其命令登录的 shell 会话,在会话终止时便结束限制,并不影响于其他 shell 会话。而对于长期的固定限制,ulimit 命令语句又可以被添加到由登录 shell 读取的文件中,作用于特定的 shell 用户。ulimit 限制的是当前 she
23、ll 进程以及其派生的子进程。举例来说,如果用户同时运行了两个 shell 终端进程,只在其中一个环境中执行了 ulimit s 100,则该 shell 进程里创建文件的大小收到相应的限制,而同时另一个 shell 终端包括其上运行的子程序都不会受其影响在安装数据库过程中会用到的ulimit参数:-H:设置硬资源限制,一旦设置不能增加-S:设置软资源限制,设置后可以增加,但是不能超过硬资源设置。-a:显示当前所有的 limit 信息。-s:线程栈大小,以 Kbytes 为单位。-n:可以打开最大文件描述符的数量。-u:用户最大可用的进程数。根据官方文档,Oracle建议配置Shell限制和系
24、统配置参数ulimit相应的值符合此表中的值即可:1)线程栈资源限制-bash-3.2$ ulimit -Hsunlimitedbash-3.2$ ulimit -Ss10240官方建议的线程栈软资源限制为最大10240KB,硬限制最大32768目前系统参数不符合要求,故需进行设置,可在.profile中进行设置,以防止失效。-bash-3.2$ cat .profileulimit -Hs 32768ulimit -Ss 102402)可以打开最大文件描述符数量限制bash-3.2# ulimit -Hn65536bash-3.2# ulimit -Sn256官方建议可以打开最大文件描述符数
25、量软资源限制为少在1024,硬限制最少在65536,目前系统参数不符合要求,故需进行设置,可在.profile中进行设置,以防止失效。-bash-3.2$ cat .profileulimit -Hs 32768ulimit -Ss 10240ulimit -Hn 65536ulimit -Sn 655363)用户最大可用进程数-bash-3.2$ ulimit -Hu27557-bash-3.2$ ulimit -Su27557官方建议可以用户最大可用进程软资源限制为少可使用2047个进程,硬限制最少16384个进程,目前系统参数符合要求,故可不修改。4.创建oracle目录1) 建立文件夹
26、创建两个文件夹u01与u02u01:存放oracle软件。u02:存放oracle数据文件。bash-3.2# mkdir -p /u01/app/oraclebash-3.2# mkdir -p /u02/oradata2)设置文件属组bash-3.2# chown -R oracle:oinstall /u01/app/oraclebash-3.2# chown -R oracle:oinstall /u02/oradata3)设置文件权限bash-3.2# chmod -R 755 /u01/app/oracle/bash-3.2# chmod -R 755 /u02/oradata/5
27、.设置环境变量-bash-3.2$ cat .profileMAIL=/usr/mail/$LOGNAME:?ulimit -Hs 32768ulimit -Ss 10240ulimit -Hn 65536ulimit -Sn 65536export DISPLAY=10.78.150.44:0.0ORACLE_BASE=/u01/app/oracleORACLE_SID=salesORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1PATH=/usr/sbin:/usr/bin:/u01/app/oracle/product/11.2.0/dbhome_1/bin/export PATHexport ORACLE_BASE ORACLE_SID ORACLE_HOME
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1