Ubuntu9.04下Oracle手动启动与自启动脚本

[color=blue]一、启动数据库实例[/color]

gengzhi@gengzhi-desktop:~$ su oracle
oracle@gengzhi-desktop:~$ sqlplus " scott/tiger as sysdba"
将出现如下连接数据库信息:

SQL*Plus: Release 10.1.0.2.0 - Production on 星期三 3月 24 16:23:27 2004
Copyright (c) 1982, 2004, Oracle. All rights reserved.
连接到:
Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>

表明登录数据库系统成功,运行startup命令启动数据库。
SQL> startup 
ORACLE instance started.

Total System Global Area 336356520 bytes
Fixed Size 279720 bytes
Variable Size 268435456 bytes
Database Buffers 67108864 bytes
Redo Buffers 532480 bytes
Database mounted.
Database opened.
SQL>
表示数据库正常启动。

[color=blue]二、关闭Oracle10g 数据库[/color]

gengzhi@gengzhi-desktop:~$ su oracle
oracle@gengzhi-desktop:~$ sqlplus "scott/tiger as sysdba" //以sysdba用户登录数据库
成功登录数据库系统后,运行shudown命令关闭数据库。
SQL> shutdown 


[color=blue]三、启动Oracle10g监听程序[/color]
Oracle的监听程序主要是为客户端的连接提供接口,在控制台窗口键入如下命令:

gengzhi@gengzhi-desktop:~$ su oracle
oracle@gengzhi-desktop:~$ lsnrctl
将出现如下监听程序信息:

LSNRCTL for 32-bit Windows: Version 10.1.0.2.0 - Production on 24-3月 -2004 16:59:51
Copyright (c) 1991, 2004, Oracle. All rights reserved.
欢迎来到LSNRCTL, 请键入"help"以获得信息。
LSNRCTL>
表明登录监听程序控制台成功,运行start命令启动监听程序。
LSNRCTL> start
将出现监听程序的一系列启动和配置情况信息列表。信息行的最后一行是“The command completed successfully”字样时,监听程序启动成功。

[color=blue]四、关闭Oracle10g监听程序[/color]
运行stop命令关闭监听程序。
LSNRCTL> stop


[color=blue]五、创建自启动脚本[/color]

1、edit /etc/oratab after creating the database, and set the last column to Y
2、设置环境变量(若以前设置过,此步可省略)

gengzhi@gengzhi-desktop:~$ sudo gedit /etc/profile
添加如下内容:

export ORACLE_HOME=/opt/oracle/product/10.2.0/db_1
export PATH=$PATH:/opt/oracle/product/10.2.0/db_1/bin

3、创建oracledb脚本到/etc/init.d/oracledb,内容如下

#!/bin/bash
#
# /etc/init.d/oracledb
#
# Run-level Startup script for the Oracle Listener and Instances
# It relies on the information on /etc/oratab

export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/10.2.0/db_1
export ORACLE_OWNR=oracle
export PATH=$PATH:$ORACLE_HOME/bin

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi

case "$1" in
start)
# Oracle listener and instance startup
echo -n "Starting Oracle: "
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
touch /var/lock/oracle
echo "OK"
;;
stop)
# Oracle listener and instance shutdown
echo -n "Shutdown Oracle: "
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
rm -f /var/lock/oracle
echo "OK"
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: `basename $0` start|stop|restart|reload"
exit 1
esac

exit 0

4、设置权限和自启动

//设置权限
gengzhi@gengzhi-desktop:~$ sudo chmod a+x /etc/init.d/oracledb

//设置每次机器启动时自动运行
root@hardy:~# update-rc.d oracledb defaults 99
Adding system startup for /etc/init.d/oracledb ...
/etc/rc0.d/K99oracledb -> ../init.d/oracledb
/etc/rc1.d/K99oracledb -> ../init.d/oracledb
/etc/rc6.d/K99oracledb -> ../init.d/oracledb
/etc/rc2.d/S99oracledb -> ../init.d/oracledb
/etc/rc3.d/S99oracledb -> ../init.d/oracledb
/etc/rc4.d/S99oracledb -> ../init.d/oracledb
/etc/rc5.d/S99oracledb -> ../init.d/oracledb

//增加用户到dba组(user用实际的用户名替代,诸如我的用户名为gengzhi),以便可以用常用用户启动时自动启动Oracle服务器而不用以Oracle用户登录
gengzhi@gengzhi-desktop:~$ sudo usermod -G dba -a user


[color=blue]六、使用企业管理器 [/color]

启动控制台

gengzhi@gengzhi-desktop:~$ su oracle
oracle@gengzhi-desktop:~$ emctl start dbconsole

访问数据库控制器
http://localhost.localdomain:1158/em/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值