?
oracle数据库是重量级的,其管理非常复杂,将其在linux平台上的启动和关闭步骤整理一下。
安装完毕oracle以后,需要创建oracle系统用户,并在/home/oracle下面的.bash_profile添加几个环境变量:ORACLE_SID,ORACLE_BASE,ORACLE_HOME。比如:
export ORACLE_SID=test? export ORACLE_BASE=oracle_install_dir export ORACLE_HOME=xxx
启动步骤:注意$代表shell命令提示符,这里的oracle是9.0以上版本。
- $ su - oracle
- $ sqlplus / nolog
- sql> conn / as sysdba
- sql> startup (一般不需要加参数,只要设置好环境变量)
- sql> quit (退出sql模式)
- $ lsnrctl start (启动监听器)关闭oracle
- $ lsnrctl stop(关闭监听器,在这之前,应该先关闭应用程序)
- $ sqlplus? /nolog
- sql>shutdown 其参数 :shutdown有四个参数,四个参数的含义如下:
Normal?需要等待所有的用户断开连接
Immediate?等待用户完成当前的语句
Transactional?等待用户完成当前的事务
Abort?不做任何等待,直接关闭数据库
normal需要在所有连接用户断开后才执行关闭数据库任务,所以有的时候看起来好象命令没有运行一样!在执行这个命令后不允许新的连接
immediate在用户执行完正在执行的语句后就断开用户连接,并不允许新用户连接。
transactional?在拥护执行完当前事物后断开连接,并不允许新的用户连接数据库。
abort?执行强行断开连接并直接关闭数据库。
前三种方式不回丢失用户数据。第四种在不的已的情况下,不建议采用!
经常遇到的问题:
1)权限问题,解决方法,切换到oracle用户;
2)没有关闭监听器 ,解决方法:关闭监听器
3)有oracle实例没有关闭,解决办法:关闭oracle实例
4)环境变量设置不全,解决办法:修改环境变量
Oracle数据库的启动和关闭方式
一、几种启动方式:
1、startup?nomount?
???非安装启动,这种方式启动下可执行:重建控制文件、重建数据库?
???启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。?
2、startup?mount?dbname?
???安装启动,这种方式启动下可执行:数据库日志归档、数据库恢复、重新命名一些数据库文件?
???如:系统表空间或日志文件。?
???执行“nomount”,然后打开控制文件?
3、startup?open?dbname?
???先执行“nomount”,然后执行“mount”,再打开包括Redo?log文件在内的所有数据库文件,?
???这种方式下可访问数据库中的数据。?
4、startup,等于以下三个命令?
???startup?nomount?
???alter?database?mount?
???alter?database?open?
5、startup?restrict?
???约束方式启动?
???这种方式能够启动数据库,但只允许具有一定特权的用户访问?
???非特权用户访问时,会出现以下提示:?
???ERROR:?
???ORA-01035:?ORACLE?只允许具有?RESTRICTED?SESSION?权限的用户使用?
6、startup?force?
???强制启动方式?
???当不能关闭数据库时,可以用startup?force来完成数据库的关闭?
???先关闭数据库,再执行正常启动数据库命令?
7、startup?pfile=参数文件名?
???带初始化参数文件的启动方式?
???先读取参数文件,再按参数文件中的设置启动数据库?
???例:startup?pfile=E:\Oracle\admin\oradb\pfile\init.ora?
8、startup?EXCLUSIVE?
二、几种关闭方式:
?
1、shutdown?normal? ???正常方式关闭数据库。? 2、shutdown?immediate? ???立即方式关闭数据库。? ???在SVRMGRL中执行shutdown?immediate,数据库并不立即关闭,? ???而是在Oracle执行某些清除工作后才关闭(终止会话、释放会话资源),? ???当使用shutdown不能关闭数据库时,shutdown?immediate可以完成数据库关闭的操作。? 3、shutdown?abort? ???直接关闭数据库,正在访问数据库的会话会被突然终止,? ???如果数据库中有大量操作正在执行,这时执行shutdown?abort后,重新启动数据库需要很长时间。 |
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=13483
一、启动
语法:startup [force] [pfile=文件名] [exclusive|shared] [mount 数据库名|normal 数据库名] [nomount]
1、正常启动:
sql>conn sys/sys as sysdba;
sql>startup
也可在启动时指定数据库名
sql>startup ora9
2、安装和非安装启动
安装启动的选项是mount,表示例程只将数据库装入,而不打开数据库;非安装启动的选项是nomount,表示只建立数据库现场,并不装入数据库,当然也不能打开。
sql>startup mount --安装启动
sql>startup nomount--非安装启动
3、独占和共享启动
独占启动的选项是exclusive,表示只允许一个例程使用该数据库;共享启动的参数是shared,表示允许多个例程并行使用该数据库,即将数据库装入多个现场。
4、约束启动
约束启动的选项是restrict,它启动数据库时装入并打开它,但是此时的数据库只能为有特殊权限的数据库管理员使用,一般用户不能联入到该数据库。
sql>startup restrict
一般说来,当用户有create session权限时,可以联入数据库,但对于restrict方式启动的数据库,则只有用户具有restricted session系统权限才允许联入。
若要在数据库运行过程中改变这一方式,可用alter system命令。
sql>alter system disable restricted session;
也可以先将数据库关闭再重新以非restrict方式启动数据库。
5、强制启动
若在正常启动数据库时遇到一些麻烦,或在上次关闭数据库时不能正常关闭,则可以采取强制启动,其选项是force。
联入sys用户
sql>startup force
6、带初始化参数文件的启动
初始化参数文件在数据库启动时