您的位置:首页 > 数据库 > Oracle

Linux 下自动启动多个oracle实例

2013-02-25 21:10 411 查看
转载自:http://blog.sina.com.cn/s/blog_4502d59c01017bau.html

Linux下自动启动多个oracle实例

—环境:

1> linux:linux4.5-32-bit-x86-setup

2> oracleracle Database10gRelease 2 (10.2.0.1.0) EnterpriseStandard Edition for Linux x86

--------------------------------------------------------

—操作详细过程:

[root@localhost ~]#cd /etc/rc.d/init.d

[root@localhost init.d]#touch dbauto              

用命令新建好文件(或是 在root用户etc/rc.d/init.d目录下直接新建文件),然后在文件中加入--下面--的脚本

内容,保存

[root@localhost ~]# chmod 755 /etc/rc.d/init.d/dbauto    // 设置文件权限

[root@localhost ~]# ls -l /etc/rc.d/init.d/dbauto

-rwxr-xr-x  1 oracle oinstall 785 Oct 23 08:27 /etc/rc.d/init.d/dbauto

[root@localhost ~]# chkconfig --add dbauto   服务添加服务列表

[root@localhost ~]# chkconfig --level 345 dbauto on    //设置dbauto服务在指定的运行级别内被启动

[root@localhost ~]#vi dbauto  //添加下面内容

1)启动一个数据库实力时编写的脚本(取名dbauto)


#!/bin/bash

#

# chkconfig: 35 95 1

# description: init script. to start/stop oracle database10g, TNS

listener, EMS, isqlplus

#

#

#

# match these values to your environment:

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0

# export ORACLE_TERM=xterm

export PATH=$PATH/ORACLE_HOME/bin

export NLS_LANG='american_america.ZHS16GBK'

export ORACLE_SID=orc1

# export DISPLAY=localhost:0

export ORACLE_USER=oracle

# see how we are called:

case $1 in

start)

su - "$ORACLE_USER"<<EOO

lsnrctl start

sqlplus /nolog<<EOS

connect / as sysdba

startup

EOS

emctl start dbconsole

isqlplusctl start

EOO

;;

stop)

su - "$ORACLE_USER"<<EOO

lsnrctl stop

sqlplus /nolog<<EOS

connect / as sysdba

shutdown immediate

EOS

emctl stop dbconsole

isqlplusctl stop

EOO

;;

*)

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

;;

esac

2)启动多个数据库实力时编写的脚本(取名dbauto)

//这个执行完成后所有实例都正常启动,服务正常运行============================================================

#!/bin/bash

#

# chkconfig: 35 95 1

# description: init script. to start/stop oracle database10g, TNS

listener, EMS, isqlplus

#

#

#

# match these values to your environment:

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0

# export ORACLE_TERM=xterm

export PATH=$PATH/ORACLE_HOME/bin

export NLS_LANG='american_america.ZHS16GBK'

export ORACLE_SID=orc1

# export DISPLAY=localhost:0

export ORACLE_USER=oracle

# see how we are called:

case $1 in

start)

su - "$ORACLE_USER"<<EOO

lsnrctl start

sqlplus /nolog <<EOS

connect / as sysdba

startup

EOS

emctl start dbconsole

isqlplusctl start

#change ORACLE_SID

export ORACLE_SID=Test001

lsnrctl start

sqlplus /nolog <<EOS

connect /as sysdba

startup

EOS

emctl start dbconsole

isqlplusctl start

EOO

;;

stop)

su - "$ORACLE_USER"<<EOO

lsnrctl stop

sqlplus /nolog <<EOS

connect / as sysdba

shutdown immediate

EOS

emctl stop dbconsole

isqlplusctl stop

#change ORACLE_SID

export ORACLE_SID=Test001

lsnrctl stop

sqlplus /nolog <<EOS

connect / as sysdba

shutdown immediate

EOS

emctl stop dbconsole

isqlplusctl stop

EOO

;;

*)

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

;;

esac

注意:编辑好启动文件后,需要给予执行权限!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: