数据库的启动,停止,监控(思考与探究)

数据库的启动:分三个阶段 (nomount、 mount、 open)


1个阶段:nomount
数据库做了什么?
启动实例 &写跟踪文件
 
需要什么?
参数文件
实例管理的目录
 
我们能做什么?
查看参数
修改参数
查看内存和后台进程的使用情况
创建数据库
重建控制文件

不能nomount的原因有什么?
参数文件有问题
审计文件目录有问题
诊断文件目录有问题
 
怎样将数据库启动到 nomount
shutdown --> nomount
startup nomount
SYS> select status from v$instance;
 
STATUS
------------
STARTED --> nomount

查看后台启动进程
select name from v$bgprocess where paddr<>'00';

~~~~~~~~~~~~~~~~~~~~~~
2个阶段:mount
数据库做了什么?
加载控制文件的信息到内存
 
需要什么?
控制文件
 
我们能做什么?
查看存储相关的信息
可以备份、还原、恢复
移动日志文件和数据文件
将数据文件 offline
打开和关闭归档模式
打开和关闭闪回数据库的功能
删除数据库

不能启动到mount的原因?
控制文件损坏,丢失
 
怎样将数据库启动到 mount?
shutdown --> mount
startup mount
nomount --> mount
alter database mount;
 
SYS> select status from v$instance;
 
STATUS
------------
MOUNTED
~~~~~~~~~~~~~~~~~~~~~~
3个阶段:open
数据库做了什么?
打开联机日志和数据文件,检查数据一致性
 
需要什么?
开联机日志和数据文件
 
我们能做什么?
任何操作

不能启动到open状态的原因?
数据文件有问题
日志文件有问题

怎样将数据库启动到 open?
shutdown --> open
startup
mount --> open
alter database open;
nomount --> open
alter database mount;
alter database open;
 
所有的 oracle数据库都可以使用read only方式打开,
不是所有的 oracle数据库都可以使用read write方式打开(physical standby);
alter database open read only;
SQL> select open_mode from v$database;
 
OPEN_MODE
--------------------
READ ONLY

alter database close后就不能使用alter database open
因为一个实例的生命周期内只能打开一个数据库,只有重新建立一个实例才可以。









#################################################################################################################################
数据库的停止:四种模式 shutdown
*正常停库: shutdown normal = shutdown
新的连接不允许建立(普通用户)
等待查询结束 (等待会话结束disconnect)
等待事务结束( commit & rollback)
强制产生检查点
关闭联机日志和数据文件
关闭控制文件
关闭实例
 
*事务级停库:shutdown transactional
新的连接不允许建立(普通用户)
不等待查询(查询被终止)
等待事务结束( commit & rollback)
强制产生检查点
关闭联机日志和数据文件
关闭控制文件
关闭实例
 
*立即停库:shutdown immediate (生产库最常用的方式)
新的连接不允许建立(普通用户)
不等待查询(查询被终止)
不等待事务(事务被强制 rollback)
强制产生检查点
关闭联机日志和数据文件
关闭控制文件
关闭实例
 
*强制停库:shutdown abort
相当于拔电源!数据库是脏库!重启的时候需要实例的恢复!


 
starup force的使用 :
startup force = shutdown abort + startup
startup force nomount = shutdown abort + startup nomount
startup force mount = shutdown abort + startup mount
 




利用下面命令监控实例启动状态
ipcs -s
ipcrm -s
 
在系统级别强制停库 :
ps -ef | grep ora_
kill -9 ### ### ###

使用oracle自带脚本,系统级别停库(可以使用该选项dbstart实现数据库的自起,相关实验笔记以后写)
dbshut


======================================================================

由于本人能力有限,存在字面,表达错误请指正。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值