1.以
sql*plus为例:
a.准备
首先我们用
sql*plus来连接到Oracle
sqlplus /nolog 是以不连接数据库的方式启动
sql*plus
connect /as sysdba 是以
DBA身份连接到oracle
b.启动
startup
Startup就
OK了。
不过
oracle启动模式有3种:
l Startup nomount (
nomount模式)启动实例不加载数据库。
l Startup mount (
mount模式)启动实例加载数据库但不打开数据库
l Startup (
open 模式)启动实例加载并打开数据库,就是我们上面所用的命令
Nomount模式中
oracle仅为实例创建各种内存结构和服务进程,不会打开任何数据库文件,所以说:
1) 创建新数据库
2) 重建控制文件
这
2种操作都必须在这个模式下进行。
Mount模式中
oracle只装载数据库但不打开数据库,所以说:
1) 重命名数据文件
2) 添加、删除和重命名重做日子文件
3) 执行数据库完全恢复操作
4) 改变数据库的归档模式
这
4种操作都必须在这个模式下进行
Open模式(就是我们上面的
startup不带任何参数的)呵呵就不多说了,正常启动。
当然这
3种模式之间可以转换:
Alter database mount(nomount模式
)—〉alter database open(mount 模式)—〉(open模式)
当然还有其它一些情况,在我们
open模式下可以将数据库设置为非受限状态和受限状态
在受限状态下,只有
DBA才能访问数据库,所以说:
1) 执行数据导入导出
2) 使用
sql*loader提取外部数据
3) 需要暂时拒绝普通用户访问数据库
4) 进行数据库移植或者升级操作
这
4种操作都必须在这个状态下进行
在打开数据库时使用 startup restrict命令即进入受限状态。
使用alter system disable restricted session命令即可以将受限状态改变为非受限状态。
使用alter system enable restricted session命令可以将非受限状态变为受限状态
使用alter database open read only可以使数据库进入只读状态。
使用alter database open read write 可以使数据库进入读写状态。
当然在某些情况下可能是用上述各种启动方式都无法成功启动数据库,这个时候就要使用startup force命令来强行启动数据库。当然谁都不想碰到这种情况
c.关闭数据
1)正常关闭 shutdown
2) 立即关闭 shutdown immediate
3) 关闭事务 shutdown transactional
4) 强行关闭 shutdown abort,当然谁都不想碰到这种情况。