快速关闭数据库

快速关闭数据库

time:2008/05/15
author: skate


有时在实际中需要重新启动生产数据库,但生产数据库的数据量都很大,有时候关机要长达几个小时,
这样对业务有很的影响,让人等的很揪心阿,为此我们就想快速关机,下面总结下快速关机的方法。

1. 停掉应用层的各种程序,防止对数据库产生更多的连接。

2. 停掉oracle监听器,彻底切短外界与生产库的新增连接
 
  $ lsnrctl stop

3. 在独占的系统的用户下,备份控制文件

  $ sqlplus / as sysdba
 
  sql> alter database backup controlfile to '/home/oracle/controlfile.ora';


4. 在独占系统的运行下,手工切换重做日志文件,确保当前已经修改过的数据已经存入文件

  sql> alter system switch logfile;


5. 在独占的系统中,生成杀数据库连接的脚本文件:

  sql > set  head off;
  sql > set  feedback off;
  sql > set newpage none;
  sql > spool ./kill_session.sql
  sql > select 'alter system kill session '''||sid||','||serial#||''';' from v$session where username is not null
  sql > spool off;


6.执行杀数据库连接的脚本

  sql > @./kill_session.sql

7.准备工作已经做完了,现在可以关闭数据库了


  sql > shutdown  immediate;


等待数据库的关闭,这个过程应该很快,下面的操作就是启动数据库了

8. 启动监听程序

  $ lsnrctl  start


9. 启动数据库

  $ sqlplus / as sysdba
  sql> startup

 

10.启动应用程序

----  end  -----

阅读更多
换一批

没有更多推荐了,返回首页