shutdown 之后 !

[复制链接]
查看11 | 回复9 | 2012-10-9 18:05:07 | 显示全部楼层 |阅读模式
刚刚准备关闭数据库
SQL>shutdown 没有加 immediate
一直处于关闭中.....怎么可以立即停下来?
回复

使用道具 举报

千问 | 2012-10-9 18:05:07 | 显示全部楼层
use another sqlplus login .shutdown abort.
回复

使用道具 举报

千问 | 2012-10-9 18:05:07 | 显示全部楼层
用shutdown abort,我担心会使数据库坏了.
回复

使用道具 举报

千问 | 2012-10-9 18:05:07 | 显示全部楼层
CTRL + C
回复

使用道具 举报

千问 | 2012-10-9 18:05:07 | 显示全部楼层
命令窗口已经关闭!
回复

使用道具 举报

千问 | 2012-10-9 18:05:07 | 显示全部楼层
shutdown相当于shutdown normal
那要等到所有的 事务结束并且提交之后,所有的连接disconnect 之后才可以关闭数据库,那肯定需要很长时间了

再开一个session 然后shutdown immediate;
回复

使用道具 举报

千问 | 2012-10-9 18:05:07 | 显示全部楼层
较好的重新启动数据库的步骤

因为各种各样的原因,有时候工作数据库需要重新启动.
我列出一个较好的操作步骤,希望对初学者有些帮助.
1. 停应用层的各种程序.
2. 停oralce的监听进程:
$lsnrctl stop
3. 在独占的系统用户下,备份控制文件:
SQL>alter database backup controlfile to trace;
4. 在独占的系统用户下,手工切换重作日志文件,确保当前已修改过的数据存入文件:
SQL>alter system switch logfile;
5. 在独占的系统用户下,运行下面SQL语句,生成杀数据库用户连接的kill_all_session.sql文件:
set head off;
set feedback off;
set newpage none;
spool /oracle_backup/bin/kill_all_session.sql
select 'alter system kill session '''||sid||','||serial#||''';' from v$session where username is not null;
spool off;
6. 在独占的系统用户下,执行杀数据库用户连接的kill_all_session.sql文件
SQL>@/oracle_backup/bin/kill_all_session.sql
7. 在独占的系统用户下,用immediate方式关闭数据库:
SQL>shutdown immediate;
或者
SVRMGRL>shutdown immediate;
8. 启动oralce的监听进程
$lsnrctl start
9. 进入独占的系统用户下,启动oralce数据库
$sqlplus /nolog
SQL>connect / as sysdba
SQL>startup;
或者
$svrmgrl
SVRMGRL>connect internal;
SVRMGRL>startup;
10.启动应用层的各种程序.
回复

使用道具 举报

千问 | 2012-10-9 18:05:07 | 显示全部楼层
oracle9i ,应该没什么大问题的,startup 看看数据库能不能正常起来就可以了
回复

使用道具 举报

千问 | 2012-10-9 18:05:07 | 显示全部楼层
如果是生产库的话,通知所有人断开,然后等待.
如果是关系不是很大的库,直接杀掉local=no的进程.
回复

使用道具 举报

千问 | 2012-10-9 18:05:07 | 显示全部楼层
谢谢!是生产库的来的.
我等了20分钟后,还是没有好.强行restart OS
结果启动数据库,可以了.
吓了一身冷汗:-)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行