centOS6.5中静默安装oracle 11gR2

来源:互联网 发布:我国加工贸易数据 编辑:程序博客网 时间:2024/04/29 01:20

近日公司租用虚机,需要在虚机上安装oracle11gR2,由于先前从未使用过linux系统,在网上查了一些方法进行安装最后都安装失败,最后经多次试验才发现安装不成功的多数问题都是集中在包或者是权限上,下面将我的方法记录如下,供大家参考,此方法中部分片段来自于网络搜索资料,每个步骤后面写着用户,说明需要切换到此用户下才能执行(su - 用户名):

此处省略安装centOS的步骤,上传工具的使用等,

第一步:在根目录下新建文件夹(root用户)

makdir /opt/oracle_software

第二步:将oracle11gR2两个安装文件上传到第一步所建的目录中,这两文件可以到oracle官网下载,并使用unzip解压文件

  • linux.x64_11gR2_database_1of2.zip
  • linux.x64_11gR2_database_1of2.zip
第三步:安装需要的包,包不要版本号,通过yum进行安装,具体的版本号是根据系统版本来决定需要的具体版本是什么,通过输入版本号前的包名会自动找到和系统相符合的包(root用户)
例如:yum install binutils


binutils 
compat-libcap1  
compat-libstdc++-33 
compat-libstdc++-33*.i686 
elfutils-libelf-devel 
gcc 
gcc-c++ 
glibc*.i686 
glibc 
glibc-devel 
glibc-devel*.i686 
ksh 
libgcc*.i686 
libgcc 
libstdc++ 
libstdc++*.i686 
libstdc++-devel 
libstdc++-devel*.i686 
libaio 
libaio*.i686 
libaio-devel 
libaio-devel*.i686 
make 
sysstat 
unixODBC 
unixODBC*.i686 
unixODBC-devel 
unixODBC-devel*.i686 
libXp

上述这些包也可以通过以下命令一次性安装,如果网络没有问题一般都会安装成功的,我安装了多次都是成功的,如果你的虚机不能上网,那就只能下载下来之后再上传上去进行安装。
yum -y install \
binutils \
compat-libcap1  \
compat-libstdc++-33 \
compat-libstdc++-33*.i686 \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc*.i686 \
glibc \
glibc-devel \
glibc-devel*.i686 \
ksh \
libgcc*.i686 \
libgcc \
libstdc++ \
libstdc++*.i686 \
libstdc++-devel \
libstdc++-devel*.i686 \
libaio \
libaio*.i686 \
libaio-devel \
libaio-devel*.i686 \
make \
sysstat \
unixODBC \
unixODBC*.i686 \
unixODBC-devel \
unixODBC-devel*.i686 \
libXp

对于安装时可以先检查要的包是否已安装,已安装的包可以不用再安装了,检查命令如下:
 例如:rpm -qa | grep binutils
   binutils-2.17.50.0.6-14.el6
第四步:创建用户组,并修改oracle用户登录密码(root用户)

groupadd oinstall

groupadd dba

useradd -g oinstall -G dba oracle

passwd oracle

此处根据提示输入新密码


第五步:创建安装目录并授权(root用户)

mkdir -p /opt/oracle

chown -R oracle:oinstall /opt/oracle

chown -R oracle:oinstall /opt/oracle_software

chmod -R 777 /opt/oracle

chmod -R 777 /opt/oracle_software


注:此处有些资料显示是使用775的权限,但是我在安装过程中使用775权限不能安装成功,出现错误权限不够,所以我采用的是777的高权限


第六步:设置环境变量(root用户)

vi /home/oracle/.bash_profile

将以下段添加到上述文件中

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/11gR2

export ORACLE_SID=orcl

export PATH=$PATH:$ORACLE_HOME/bin


第七步:使环境变量有效(root用户)
source /home/oracle/.bash_profile

第八步:添加资源要求(root用户)

vi /etc/security/limits.conf
将以下段添加到上述文件中

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240



第九步:配置Linux内核参数(root用户)

vi /etc/sysctl.conf
将以下段添加到上述文件中,添加时请将文件中原有kernel.shmmax 和kernel.shmmni注释,以下值也可以先通过查询本系统参数将其填入

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

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 = 1048586



第十步:执行以下命令(root用户)
/sbin/sysctl -p

第十一步:拷贝响应文件(root用户)
cp   /opt/oracle_software/database/response/db_install.rsp   /opt/oracle

第十二步:查看主机名(root用户)
/etc/sysconfig/network中的hostname要与/etc/hosts中的一致
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=centos
就是上面的HOSTNAME=centos
vim /etc/hosts
127.0.0.1   localhost centos localhost4 localhost4.localdomain4 oracle.centos
::1         localhost centos localhost6 localhost6.localdomain6 oracle.centos

centos(本人机子,安装centOS时改的,也可以有安装完之后现更改,此处的oracle.centos则是我在响应文件中要使用到的单独设置的值)

第十三步:编辑响应文件(oracle用户)

vi /opt/oracle/db_install.rsp

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0(不能更改,默认就行)

oracle.install.option=INSTALL_DB_AND_CONFIG

ORACLE_HOSTNAME=oracle.centos(第十二步设置的主机名)

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/opt/oracle/oraInventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOME=/opt/oracle/11gR2

ORACLE_BASE=/opt/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.isCustomInstall=true(此处为false则不安装下述内容oracle.install.db.customComponents,安装时间为半小时左右,
如为true,则需安装oracle.install.db.customComponents中的内容,安装时间为一个半小时左右)

oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=oinstall

oracle.install.db.CLUSTER_NODES=

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE

oracle.install.db.config.starterdb.globalDBName=orcl

oracle.install.db.config.starterdb.SID=orcl(第六步中设置的SID)

oracle.install.db.config.starterdb.characterSet=AL32UTF8

oracle.install.db.config.starterdb.memoryOption=true

oracle.install.db.config.starterdb.memoryLimit=490(此处的值由系统决定,我的机子是1G的内存,目前为止可用的只有496,所以我设置了490,如果大家设置大了在安装过程中会报错,看到之后更改些值之后重新进行安装)

oracle.install.db.config.starterdb.installExampleSchemas=false

oracle.install.db.config.starterdb.enableSecuritySettings=true

oracle.install.db.config.starterdb.password.ALL=oracle123(设置所有的密码为oracle123,由于此处设置的密码过于简单,在安装过程中会警告,可以忽略继续安装)

oracle.install.db.config.starterdb.password.SYS=

oracle.install.db.config.starterdb.password.SYSTEM=

oracle.install.db.config.starterdb.password.SYSMAN=

oracle.install.db.config.starterdb.password.DBSNMP=

oracle.install.db.config.starterdb.control=DB_CONTROL

oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=

oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false

oracle.install.db.config.starterdb.dbcontrol.emailAddress=

oracle.install.db.config.starterdb.dbcontrol.SMTPServer=

oracle.install.db.config.starterdb.automatedBackup.enable=false

oracle.install.db.config.starterdb.automatedBackup.osuid=

oracle.install.db.config.starterdb.automatedBackup.ospwd=

oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE

oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/opt/oracle/oradata

oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/opt/oracle/dbrecovery

oracle.install.db.config.asm.diskGroup=

oracle.install.db.config.asm.ASMSNMPPassword=

MYORACLESUPPORT_USERNAME=

MYORACLESUPPORT_PASSWORD=

SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

DECLINE_SECURITY_UPDATES=true(此值必须为true)

PROXY_HOST=

PROXY_PORT=

PROXY_USER=

PROXY_PWD=

第十四步:授权(oracle用户)
chmod 777 /opt/oracle/db_install.rsp

第十五步:安装(oracle用户)
/opt/oracle_software/database/runInstaller -ignoreSysPrereqs -ignorePrereq -silent -nowelcome -responseFile /opt/oracle/db_install.rsp

安装过程中后台进程在运行着,终端上看不到所有的提示信息,当看见提示日志文件存储路径时可以重新打开一个终端登录到oracle用户下进行实时查看
tail -f 日志文件路径
例如:/opt/oracle/oraInventory/logs/installActions2014-10-22_02-30-53PM.log

第十六步:观察安装情况,在安装过程程中出现警告[WARNING]不用管,出现错误[FATAL]则需重新查看问题重新安装。

当看见启动安装的终端中出现”Successfully Setup Software”说明安装成功,按回车键结束安装

第十七步:运行以下脚本进行配置(root用户)

#!/bin/sh 
#Root scripts to run

/opt/oracle/oraInventory/orainstRoot.sh
/opt/oracle/11gR2/root.sh

如提示找不到上述两文件则说明未安装成功。

第十八步:登录sqlplus(oracle用户)

sqlplus "/as sysdba"

执行以下语句:

ALTER system SET processes=2000 scope=spfile;

ALTER system SET sessions=2200 scope=spfile;

ALTER profile DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS unlimited;

ALTER profile DEFAULT LIMIT PASSWORD_LIFE_TIME unlimited;

停止监听重新开启:

shutdown immediate;

startup open;


通过以下语句查看状态

SQL> startup open
ORACLE instance started.


查询一下示例数据库验证下:

select * from scott.emp;


如在安装过程出错退出,重新安装时会报未能初始化会话的错误,先将先前的安装文件夹删除之后再进行安装即可。


注意:安装之后重启电脑oracle的监听和实例不会自动启动,需登录之后手动启动,如需设置成开机自启动大家可在网上搜索一下相关资料,

本人也是第一次使用linux系统,好多命令也不熟悉,如有错误,欢迎大家指正。















0 0