1、 Oracle在Linux系统下的安装 一、 Oracle安装环境 2 二、 查看环境参数 2 1. 检查内存空间 2 2. 确认系统版本号 2 3. 确认Swap分区的大小 2 4. 确认操作系统的磁盘空间 3 5. 确认网络IP地址的配置。 4 6. 确认vi /etc/hosts文件 4 三、 修改内核参数 5 1. 检查vi /etc/sysctl.conf 5 2. 在vi /etc/security/limits.conf 行末添加以下内容 6 3. vi /etc/pam.d/login 行末添加以下内容 7 4. 在vi /
2、etc/selinux/config 确保以下内容 8 四、 创建Oracle软件需要的用户、组、安装目录 9 五、 环境变量配置 10 六、 检查软件包是否完整 10 七、 软件安装步骤 12 八、 安装常见问题(FAQ) 16 1. 无法启动安装界面 16 2. 安装监听 16 3. 启动./runInstaller出现错误描述 17 一、 Oracle安装环境 Ø Linux RedHat EnterPrise5默认安装(自定义软件时,全选) Ø /opt/oradata/目录:下载的10201_database_li
3、nux32.zip放在该目录 Ø /u01/app/oracle/目录:为Oracle安装的ORACLE_BASE Oracle10g for linux32下载地址: 二、 查看环境参数 1. 检查内存空间 要求922MB的内存 # grep MemTotal /proc/meminfo 2. 确认系统版本号 [root@localhost ~]# uname -a 或者 [root@localhost ~]# uname -r 2.6.18-164.el5 由此可以确认此平台是32位的Linux操作平台 3. 确认Swap分区的大小 根据Orac
4、le官方文档的建议,在机器内存小于1G的情况下,swap分区大小应该设置为内存的2倍大,若内存大于2G则swap分区设置为与内存大小一样。 在后面Oracle原装检查的时候需要多少就增加多少。如本次安装Swap分区为1503MB*1024=1540088KB,实际需要1512MB,故可以增加20MB。 4. 确认操作系统的磁盘空间 (1) # grep SwapTotal /proc/meminfo 硬盘要求3.5G (2) 确认/tmp目录(或叫做tmp文件夹)的大小,由于Oracle要求安装的时候要大于400M的空间。而我们分区的时候是分到根分区下(看出根分区才用17
5、还有16G可用空间),所以空间足够。 5. 设置主机名和网络IP地址。 没有配置最好进入图形界面进行配置静态IP。 # system-config-network图形界面进行设置 6. 确认vi /etc/hosts文件 注意:127.0.0.1这一行的内容不能改动。 # vi /etc/hosts 内容: # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1
6、 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 192.168.201.128 localhost.localdomain localhost Localhost.localdomain 为主机名。 保存后在终端运行命令: #hostname 是否主机名变成了zjinterface ,如果没有改变则要运行以下命令 #service network restart 如图: 输入“:wq”退出vi编辑器 从以上提示当中也能看出删除或者改变将会导
7、致网络失败,因为电脑中会用到localhost这个东西,然后ping localhost这个,如果ping不通的话或者不是127.0.0.1就会出问题。 第一,在Oracle的安装过程中有时也会安装失败。也不会提示是这个文件的问题,只会报一个JAVA异常错误。 第二,网络监听也会出现问题,启不起来(如1521的端口根本连都联不进去,程序也连接不到数据库中)。 三、 修改内核参数 1. 检查vi /etc/sysctl.conf 相应参数值比下面给出的值大,就不需要修改。没有相应的参数就添加。 # vi /etc/sysctl.conf kernel.shmall =
8、2097152 // 该参数表示系统一次可以使用的共享内存总量(以页为单位)。 缺省值就是2097152,通常不需要修改 kernel.shmmax = 2147483648 // 该参数定义了共享内存段的最大尺寸(以字节为单 位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G kernel.shmmni = 4096 // 这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改 kernel.sem = 250 3200
9、0 100 128 // 表示设置的信号量 fs.file-max = 65536 // 表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default=262144 // 默认的接收窗口大小 net.core.rmem_max=262144 // 接收窗口的最大大小 net.core.wmem_default=262144
10、 // 默认的发送窗口大小 net.core.wmem_max=262144 // 发送窗口的最大大小 修改好内核参数后,执行如下命令使新的设置生效 # /sbin/sysctl -p 验证设置 以 root 用户身份运行以下命令来验证您的设置: /sbin/sysctl -a | grep shm /sbin/sysctl -a | grep sem /sbin/sysctl -a | grep file-max /sbin/sysctl -a | grep ip_local_port_range 例如: 如果系统的参数设置的
11、比上述参数值小,则编辑 /etc/sysctl.conf 文件,添加或更改这些参数。完成后,运行以下命令激活更改: /sbin/sysctl -p 2. 在vi /etc/security/limits.conf 行末添加以下内容 #use for oracle * soft nproc 2047 * hard nproc 16384 * soft nofile 1024 * hard nofile 65536 3. vi /etc/pam.d/login 行末添加以下内容 session required pam_limits.so 4. 在vi /etc
12、/selinux/config 确保以下内容 SELINUX=disabled 关闭SELIINUX 四、 创建Oracle软件需要的用户、组、安装目录 1 创建Oracle用户组 # groupadd oinstall # groupadd dba 2 创建Oracle用户 # useradd -m -g oinstall -G dba oracle 3 设置Oracle用户口令 # passwd oracle 4 创建Oracle安装目录以及数据存放目录 # mkdir -p /u01/app/oracle //-p表示递归的层层建立,Oracle软件
13、的安装目录 # mkdir -p /opt/oradata //数据库解压存放目录 5 修改目录权限 # chown -R oracle:oinstall /u01/app/oracle/ /opt/oradata/ # chmod -R 755 /u01/app/oracle/ /opt/oradata/ 五、 环境变量配置 环境变量配置: 例如: # su - oracle $ vi ~/.bash_profile # User specific environment and startup programs export ORACLE_BAS
14、E=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/10g export ORACLE_SID=orcl PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin export PATH 保存退出后使用如下命令,使设置生效: $ source ~/.bash_profile 六、 检查软件包是否完整 进入系统,用root用户,终端命令: # rpm -q gcc make binutils openmotif setarch compat-db compat-gcc compat-gcc-c++ c
15、ompat-libstdc++ compatlibstdc++-devel gcc-4.1.1-52.el5 make-3.81-1.1 binutils-2.17.50.0.6-2.el5 package openmotif is not installed setarch-2.0-1.1 package compat-db is not installed package compat-gcc is not installed package compat-gcc-c++ is not installed package compat-libstdc++ is not i
16、nstalled package compat-libstdc++-devel is not installed 使用rpm -a|grep 软件包关键词命令进行检测,一般情况下会需要手动安装如下的软件包,缺少的都需要安装相关的软件包, RHEL_5 i386 DVD光盘中,请参考安装下面的包: # 从RHEL_5 i386 DVD 光盘中( 按照以下的顺序安装) rpm -Uvh compat-db-4* rpm -Uvh libaio-0* rpm -Uvh compat-libstdc++-33-3* rpm -Uvh compat-gcc-34-3* rpm -Uvh
17、compat-gcc-34-c++-3* rpm -Uvh libXp-1* rpm -Uvh openmotif-2* rpm -Uvh gcc-4* rpm -Uvh glibc-2.5-12.i686.rpm 运行结果如图: 如:#rpm -Uvh /media/Server/libxp-1* 如果不安装libXp软件包则安装不能启动Oracle10g安装程序,如果没有则挂载文件进行安装。 七、 软件安装步骤 [root@localhost ~]# uzip /opt/oradata/10201_database_linux32.zip /u01/oracl
18、e/ 运行 [root@localhost ~]# xhost + [root@localhost ~]# su - oracle [oracle@localhost ~]$ /u01/oracle/database/runInstaller 进行安装,出现一下界面,我们选择基本安装。 点击下一步。 点击下一步,看环境检查还有没有什么要修改的。 打上勾。点击下一步。 点击密码管理,前三个账户不用锁定,点击OK。 当出现一下界面时候执行两个脚本。 点击退出 八、 安装常见问题(FAQ) 1. 无法启动安装界面 如果无法
19、看到安装界面,请使用root帐户执行如下命令后再运行安装程序: # export DISPLAY=:0.0 # xhost + (此时SELINUX一定要已经禁用了,否则会报错。) $ ./runInstaller 2. 安装监听 如果在安装过程中不创建数据库,只安装程序,则监听和创建数据库等安装完成后再进行相关的操作。 使用Oracle提供的NET CONFIGURATION ASSISTANT创建TNS监听 $ netca 基本上就是一直Next就可以了,当然你也可以在这期间修改TNS的监听端口号 TNS监听创建完成后可以使用如下命令进行检查: # netsta
20、t -atln 检查监听端口是否打开 $ lsnrctl status 检查TNS监听状态 确认监听已经成功启动后,即可执行Database Configure Assistant进行数据库的创建,执行命令如下: $ dbca 在创建数据库的过程中,建议将数据库的字符集设置为Unicode UTF-8,防止出现乱码。 3. 启动./runInstaller出现错误描述 (1)在./runInstaller运行时出现, 错误描述:Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/Ora
21、Install2007-09-25_10-54-49PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(Unknown Source) at java.lang.ClassLoader.loadLibrary(Unknown Source)
22、 at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) at sun.security.action.LoadLibraryAction.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at sun.awt.NativeLibLoader.loadLibraries(Unknown Source) at sun.awt.Debu
23、gHelper.
24、g: Error in invoking target 'all_no_orcl ihsodbc' of makefile '/oracle/oracle/product/10.2.0/rdbms/lib/ins_rdbms.mk'. See '/oracle/oraInventory/logs/installActions2007-09-25_03-42-11AM.log' for details. Exception Severity: 1 这个原因也是由于缺少相应的包compat-libstdc++-33-3.2.3-61.i386.rpm,手动安装吧。进到光盘的Sever目录下,运行下面命令: [root@localhost Server ]#rmp -ivh compat-libstdc++-33-3.2.3-61.i386.rpm - 20 -






