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

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

2009-11-27 09:12 411 查看

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

一、启动数据库实例

Java代码

gengzhi
@gengzhi
-desktop:~$ su oracle

oracle@gengzhi
-desktop:~$ sqlplus
" scott/tiger as sysdba"

gengzhi@gengzhi-desktop:~$ su oracle
oracle@gengzhi-desktop:~$ sqlplus " scott/tiger  as sysdba"

将出现如下连接数据库信息:

Sql代码

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>

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代码

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>

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>

表示数据库正常启动。

二、关闭Oracle10g 数据库

Java代码

gengzhi
@gengzhi
-desktop:~$ su oracle

oracle@gengzhi
-desktop:~$ sqlplus
"scott/tiger as sysdba"

//以sysdba用户登录数据库

gengzhi@gengzhi-desktop:~$ su oracle
oracle@gengzhi-desktop:~$ sqlplus "scott/tiger as sysdba"  //以sysdba用户登录数据库

成功登录数据库系统后,运行shudown命令关闭数据库。

Sql代码

SQL> shutdown
SQL> shutdown


三、启动Oracle10g监听程序

Oracle的监听程序主要是为客户端的连接提供接口,在控制台窗口键入如下命令:

Java代码

gengzhi
@gengzhi
-desktop:~$ su oracle

oracle@gengzhi
-desktop:~$ lsnrctl

gengzhi@gengzhi-desktop:~$ su oracle
oracle@gengzhi-desktop:~$ lsnrctl

将出现如下监听程序信息:

Sql代码

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>

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命令启动监听程序。

Sql代码

LSNRCTL> start

LSNRCTL> start

将出现监听程序的一系列启动和配置情况信息列表。信息行的最后一行是“The command completed successfully”字样时,监听程序启动成功。

四、关闭Oracle10g监听程序

运行stop命令关闭监听程序。

Sql代码

LSNRCTL> stop

LSNRCTL> stop


五、创建自启动脚本

1、edit /etc/oratab after creating the database, and set the last column to Y

2、设置环境变量(若以前设置过,此步可省略)

Java代码

gengzhi
@gengzhi
-desktop:~$ sudo gedit /etc/profile

gengzhi@gengzhi-desktop:~$ sudo gedit /etc/profile

添加如下内容:

Java代码

export ORACLE_HOME=/opt/oracle/product/
10.2
.
0
/db_1

export PATH=$PATH:/opt/oracle/product/10.2
.
0
/db_1/bin

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,内容如下

Java代码

#!/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

#!/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、设置权限和自启动

Java代码

//设置权限

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

//设置权限
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


六、使用企业管理器

启动控制台

Java代码

gengzhi
@gengzhi
-desktop:~$ su oracle

oracle@gengzhi
-desktop:~$ emctl start dbconsole

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


访问数据库控制器
http://localhost.localdomain:1158/em/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: