一、sql*plus方式:
Sqlplus /nolog 是以不连接数据库的方式启动sql*plus
Connect /as sysdba 是以DBA身份连接到oracle
Startup就可以启动了。
不过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 database open read only可以使数据库进入只读状态。
使用alter database open read write 可以使数据库进入读写状态。
当然在某些情况下可能是用上述各种启动方式都无法成功启动数据库,这个时候就要使用startup force命令来强行启动数据库。当然谁都不想碰到这种情况:)
c.关闭数据库
1)正常关闭 shutdown
2) 立即关闭 shutdown immediate
3) 关闭事务 shutdown transactional
4) 强行关闭 shutdown abort,当然谁都不想碰到这种情况。