精品Linux安装Oracle

精品Linux安装Oracle 虚拟机redhat9下oracle9的安装配置 一、 软件要求 Redhat 9 Oracle 9.2.04 VMware 5.5.3 二、 软件下载 oracle下载地址如下可按Ctrl键,同时点击下面链接进行下载 http// http// http// 注 1 虚拟linux磁盘空间8G以上;
linux 2.8G,oracle 2.85G,数据库2G;

2 虚拟机内存,最好分配在512M或以上,速度比较快, 我试过用256M,超慢;

3 如果linux虚拟机硬盘空间不足;
建议将安装文件放在windows的盘符下,共享文件夹,通过mount -t smbfs方式来让linux访问windows下共享的文件夹来进行安装,对虚拟linux来说,就不需要占用那么大的空间;
需要保证虚拟就机linux和windows之间的网络畅通;
或通过虚拟机工具共享;

三、 安装前配置 1 创建组及用户 需在root用户下 建立一个用户和组,Oracle 往往要求建立两个组,一个负责安装,另一个负责管理,但很多老资格的DBA都认为建立一个组就足够了。以root用户运行下列命令 groupadd oracle useradd oracle -g dba passwd oracle 注也可建多个组 groupadd orainstall groupadd oradba groupadd oraoper useradd ora -G orainstall,oradba 可以根据自己的情况用不同的用户名字和组,根据自己喜好. 2 oracle安装目录可为 /home/oracle 注 Oracle安装的位置应遵守OFA Optimal Flexible Architecture 规范,但在我的机器上,由于空间有限,所以将ORACLE_HOME设定为/soft/oracle,并要确保oracle用户对这个目录可读写。

3 修改sysctl.conf 需在root用户下 vi /etc/sysctl.conf 在最后添如下内容 by fj kernel.shmmax 261986254 此值不可超过虚拟机的理物理内存 如果遗漏这步,安装的最后一步会报ORA-27123 unable to attach to shared memory segment错误. 保存后执行以使立即生效 sysctl –p 4 在.bash_profile中添加环境变量 vi /home/oracle/.bash_profie 在最后添加如下内容 by fj export LD_ASSUME_KERNEL2.4.1 export ORACLE_BASE/home/oracle/OraHome export ORACLE_HOME/home/oracle/OraHome/9.2.0 export ORACLE_SIDora9i export ORACLE_TERMxterm export ORA_NLS33ORACLE_HOME/ocommon/nls/admin/data LD_LIBRARY_PATHORACLE_HOME/lib/lib/usr/lib LD_LIBRARY_PATHLD_LIBRARY_PATH/usr/local/lib export LD_LIBRARY_PATH export PATHPATHORACLE_HOME/bin CLASSPATHCLASSPATHORACLE_HOME/JREORACLE_HOME/jlibORACLE_HOME/rdbms/jlib CLASSPATHCLASSPATHORACLE_HOME/network/jlib export PATH CLASSPATH unset USERNAME 保存后执行以使立即生效 source .bash_profile 5 解压安装文件 zcat ship_9204_linux_disk1.cpio.gz | cpio -idmv zcat ship_9204_linux_disk2.cpio.gz | cpio -idmv zcat ship_9204_linux_disk3.cpio.gz | cpio –idmv 解压后,生成 Disk1 Disk2 Disk3 三个文件夹 注如文件在windows中,则做如下操作; 但建议放到linux中 在windows下,将存放安装文件的文件夹oracle共享,设置共享权限为可读可写,然后执行如下命令 mount -t smbfs -o usernamecl,passwordchenli,ip192.168.1.100 -l //chenli/oracle /home/ora/setup 命令解释 上面命令中,usernamecl,passwordchenli中cl是windows用户,chenli是cl用户的密码ip192.168.1.100 中192.168.1.100 是windows主机的ip地址 //chenli/oracle 中,chenli是windows主机的主机名,oracle是共享文件夹 /home/ora/setup 是linux下的目录路径,必须存在,可以根据自己的需要,设定不同的路径. 四、 安装 配置后最好重启,用oracle登录,并登入xwindow图形界面 进入Disk1目录 执行./runInstaller 将出现下面的界面 注意,有些时候显示的安装界面是乱码的,我的red hat linux 9的简体中文版,安装程序都是英文的,这个时候可以通过执行如下命令来解决问题 export LANGC 然后再执行./runInstaller就不会有乱码了. 1 2 点击Next 键,进入下一步,直至出现图二 3 一直next到完成,中间出现的错误可点 Ignore 忽略; 且在创建数据库过程中要求输入默认用户的密码 4 数据库安装成功后可用dbca 命令建多个数据库实例 五、 错误总结 我在安装过程中出现了一些问题 1 弹出对话框,显示错误信息thrown when the ip address of a host cannot be determined 这时候需要用root用户打开/etc/hosts 编辑该文件,ip地址和主机名字的对应关系,尽量简单,在第二列,即主机名列,不要出现ip地址形式x.x.x.x的主机名 2 在安装的最后,安装agent工具的时候出现如下的错误信息 Parameter “orahome“ /oracle/product/9.2.0 Parameter “nodeinfo“ NO_VALUE Agent Service Failed 这个问题是没有打补丁引起的,不过该问题不会影响到数据库的使用,只是agent工具不可用.下载 p2617419_220_GENERIC.zip p3006854_9204_LINUX.zip p3238244_9204_LINUX.zip 然后安装,需要重新执行oracle的安装./runInstaller,所以最好在安装前打一下这个补丁. 补丁安装如下 a p2617419_220_GENERIC.zip 是oracle的opatch 补丁工具,在虚拟机中unzip解压后生成OPatch目录,可放在ORACLE_HOME目录中,并将其路径放在PATH环境变量中; unzip p2617419_220_GENERIC.zip 解压生成 OPatch 目录 vi .bash_profile 编辑 .bash_profile文件 export PATHPATH ORACLE_HOME/OPath sourch .bash_profile 使配置生效 b p3006854_9204_LINUX.zip 是oracel的一个补丁,安装步骤如下 unzip p3006854_9204_LINUX.zip 解压生成 3006854目录 cd 3006854 进入补丁目录 [oraclelocal 3006854] opatch apply 安装补丁 [oraclelocal 3006854] opatch lsinventory 查看安装是否成功 c p3238244_9204_LINUX.zip 是oracle的一个补丁,安装同上 3 ORA-29807 specified operator does not exist 在建立新的DB时会出现的错误。

这是Oracle 的bug , 可以忽略掉,安装完成后,在ORACLE_HOME/rdbms/admin 目录下运 行utlrp.sql ,用于修补ORA-29807 错误。

4 creating and starting Oracle instance 80 ORA-29550 java session state cleared 没打补的原故,但对数据创建使用没影响,可Ignore忽略 5小小的提示 如果大家以后碰到类似ORA-xxxx之类的错误信息,可以用 oerr ora NUMBER 这个命令来看看oracle是怎么解释和解决这个问题的。

六、 启动数据库 用oracle用户登录linux 首先执行命令 sqlplus “/ as sysdba“ SQL startup 启动数据库;

SQL shutdown 关闭数据库. 启动监控程序,在普通命令行下执行如下命令 lsnrctl start 启动监控 lsnrctl stop 停止监控 七、 使用数据库 1然后创建表空间 create tablespace ts_test1 datafile /home/oracle/tbspace/devbase_20080121.dbf size 500M autoextend on next 100M maxsize 1000M; 要确保/home/oracle/tbspace目录存在,有权限,足够的空间存放表空间文件 2创建用户 create user test1 identified by test1 default tablespace ts_test