oracle mysql安装,Oracle 11g数据库的命令行安装

Oracle 11g数据库的命令行安装

2012-12-20  TsengYia#126.com http://tsengyia.blog.chinaunix.net/

在无图形桌面的Linux服务器上安装Oracle数据库,并实现自动应答。

利用此机制,结合恰当的Shell脚本可进一步配置Oracle的无人值守批量部署。

##############################################################################

系统环境:

RHEL 6.2 [2.6.32-220.el6.i686]

软件环境:

—— 来自RHEL 5.5光盘的RPM软件包

./Server/pdksh-5.2.14-36.el5.i386.rpm

—— 从下载的Oracle 11g安装包

linux_11gR2_database_1of2.zip

linux_11gR2_database_2of2.zip

—— 来自RHEL 6.2光盘的RPM软件包

包组:Development tools

包:compat-libstdc++-33、elfutils-libelf-devel、libaio-devel、sysstat、unixODBC-devel、……

##############################################################################

一、准备Oracle 11g R2的安装条件

此步骤为安装及运行Oracle 11g的必要条件,与图形化安装并无差异。

详细请参考database/welcome.html页面的Database Quick Installation Guide 。

1. 系统配置要求

1)物理内存1GB以上,交换空间大约为物理内存的2倍。

2)安装目录(/opt/oracle)建议有8GB以上、/tmp目录建议有1GB以上可用空间。

3)提前配置好主机名、IP地址,完成安装以后不要再改主机名。

2. 需要的软件环境

[root@dbserver ~]# yum -y install binutils compat-libstdc++ compat-libstdc++-33 elfutils-libelf-devel gcc gcc-c++ glibc-devel glibc-headers ksh libaio-devel libstdc++-devel make sysstat unixODBC-devel ……

[root@dbserver ~]# rpm -e ksh               //满足兼容要求,改装RHEL5中的pdksh

[root@dbserver ~]# rpm -ivh .../pdksh-5.2.14-36.el5.i386.rpm

3. 内核参数调整(不低于以下值)

[root@dbserver ~]# vi /etc/sysctl.conf

......

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

[root@dbserver ~]# sysctl -p

4. 用户环境要求

1)创建相关用户、组账号

[root@dbserver ~]# groupadd oinstall                     //安装组

[root@dbserver ~]# groupadd dba                          //管理组

[root@dbserver ~]# useradd -g oinstall -G dba oracle     //运行用户

[root@dbserver ~]# passwd oracle

2)调整用户变量

[root@dbserver ~]# vi ~oracle/.bash_profile

......

umask 022

export ORACLE_BASE=/opt/oracle

export ORACLE_SID=orcl                                   //要使用的数据库实例名称

export LANG=en_US.UTF-8                                  //确定要使用的语言环境

[root@dbserver ~]# vi /etc/profile

……

export PATH=$PATH:/opt/oracle/product/11.2.0/dbhome_1/bin

3)调整会话限制

[root@dbserver ~]# vi /etc/pam.d/login

......

session     required    pam_limits.so

[root@dbserver ~]# vi /etc/security/limits.conf

oracle         soft    nproc    8192

oracle         hard    nproc    16384

oracle         soft    nofile    32768

oracle         hard    nofile    65536

5. 安装目录准备

[root@dbserver ~]# mkdir /opt/oracle                     //创建基本目录

[root@dbserver ~]# chown -R oracle:oinstall /opt/oracle/

[root@dbserver ~]# chmod -R 775 /opt/oracle/

[root@dbserver ~]# vim /etc/oraInst.loc                 //若应答文件内已配置,此文件貌似可无

inventory_loc=/opt/oracle/oraInventory

inst_group=oinstall

二、准备应答文件

有两种方法:根据rsp模板创建,或者通过runInstaller脚本录制。

1. 方法一:根据rsp模板创建

[root@dbserver ~]# su - oracle

[oracle@dbserver ~]$ cp /var/ftp/pub/database/response/db_install.rsp ./

[oracle@dbserver ~]$ vim db_install.rsp                 //参考文件内说明修改

[oracle@dbserver ~]$ chmod 640 db_install.rsp           //避免文件被非授权访问

2. 方法二:通过runInstaller脚本录制

[root@dbserver ~]# su - oracle

[oracle@dbserver ~]$ cd /var/ftp/pub/database/

[oracle@dbserver ~]$ ./runInstaller                     //只录制,存为~/db_install.rsp

[oracle@dbserver ~]$ vim db_install.rsp                 //参考文件内说明修改

[oracle@dbserver ~]$ chmod 640 db_install.rsp           //避免文件被非授权访问

3. 应答文件示例

[oracle@dbserver ~]$ vim db_install.rsp

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0

oracle.install.option=INSTALL_DB_AND_CONFIG

ORACLE_HOSTNAME=dbserver

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/opt/oracle/oraInventory

SELECTED_LANGUAGES=en

ORACLE_HOME=/opt/oracle/product/11.2.0/dbhome_1

ORACLE_BASE=/opt/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.isCustomInstall=false

oracle.install.db.customComponents=

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=dba

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

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

oracle.install.db.config.starterdb.memoryLimit=503

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

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

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

oracle.install.db.config.starterdb.password.ALL=Oracle11g

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=

……

三、执行无图形化安装

1. 安装过程

1)释放压缩包

[oracle@dbserver ~]$ cd /var/ftp/pub/

[oracle@dbserver pub]$ unzip linux_11gR2_database_1of2.zip

[oracle@dbserver pub]$ unzip linux_11gR2_database_2of2.zip

2)执行安装脚本

[oracle@dbserver pub]$ cd /var/ftp/pub/database/

[oracle@dbserver database]$ ./runInstaller -silent -responseFile /home/oracle/db_install.rsp

安装说明:

a. 选项-silent表示静默安装,免安装交互,大部分安装信息也不输出

b. 选项-responseFile指定应答文件,要求用绝对路径

c. 执行./runInstaller -help可以查看安装帮助

d. 若忽略-silent选项,将会允许交互,对于应答文件中未设置的项可以再手工指定

e. 若添加-noconfig选项,可以忽略应答文件中的安装类型,而仅安装数据库软件

2. 安装后设置

[root@dbserver ~]# /opt/oracle/product/11.2.0/dbhome_1/root.sh

四、使用Oracle服务脚本

1. 编写控制脚本

[root@dbserver ~]# vi /etc/init.d/oracle         //编写oracle服务控制脚本

#!/bin/bash

#### 2011.10.10 by TsengYia ####

# chkconfig: 35 90 10

# description: Oracle Database Service Daemon.

ORCL_BASE="/opt/oracle"

ORACLE_HOME=$ORCL_BASE/product/11.2.0/dbhome_1

ORACLE_OWNER=oracle

case "$1" in

start)

su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start"             #//启用监听器

su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"      #//启用数据库程序

su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole"     #//启用OEM控制台

;;

stop

su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole"      #//停止OEM控制台

su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"       #//停止数据库程序

su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl stop"              #//停止监听器

;;

status)

if(pgrep "tnslsnr" && netstat -anpt | grep ":1521") &> /dev/null

then

echo "Oracle 11g Net Listener is running."

else

echo "Oracle 11g Net Listener is not running."

fi

if(netstat -anpt | grep ":1158" && netstat -anpt | grep ":5520") &> /dev/null

then

echo "Oracle 11g Enterprise Manager is running."

else

echo "Oracle 11g Enterprise Manager is not running."

fi

;;

restart)

$0 stop

$0 start

;;

*)

echo "Usage: $0 {start|stop|restart|status}"

exit 1

;;

esac

exit 0

[root@dbserver ~]# chmod +x /etc/init.d/oracle

2. 添加为系统服务

[root@dbserver ~]# chkconfig --add oracle

3. 通过脚本控制Oracle服务

[root@dbserver ~]# service oracle status

[root@dbserver ~]# service oracle restart

##############################################################################

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值