ORACLE启动的方式有哪些
1个回答
展开全部
数据库启动的阶段
nomount
mount
open
一步到位的方法
startup = nomount + mount + open
数据库的启动分 3 个阶段
1、nomount:只加载实例
查看数据库状态:select instance_name,status from v$instance; ==> STARTED
select * from v$sgainfo; ==> 与内存相关的
如何启动:在停止状态 ==> startup nomount
数据库作了什么:1.读取参数文件分配实例
2.产生警报日志
3.分配了内存
4.后台进程启动
需要什么条件:(1)参数文件,目的分配内存和后台进程;
(2)实例管理的目录,目的写警报日志
我们可以作什么: 1)查看部分动态性能视图,即v$等(与内存和后台进程相关的视图)
2)修改初始化参数
3)创建数据库
4)重新创建控制文件
SYS@ora10g> startup nomount
ORACLE instance started.
Total System Global Area 230686720 bytes
Fixed Size 1218676 bytes
Variable Size 75499404 bytes
Database Buffers 150994944 bytes
Redo Buffers 2973696 bytes
SYS@ora10g> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
------------------------ ----------
ora10g STARTED
SYS@ora10g>
2、mount
如何启动:(1)startup mount
(2)已经启动的状态,从nomount到mount状态 ==> alter database mount
数据库作了什么:从参数文件中获得控制文件的位置 加载控制文件到内存
需要什么条件:需要所有的控制文件都在,并且状态是一致的
控制文件在哪:由初始化参数 control_file 决定,该参数指向几个控制文件,数据库就需要几个文件
我们可以作什么: (1)可以查看所有动态性能视图(v$xxx) 但不能查询数据字典
(2)可以移动数据文件和联机日志文件
(3)可以备份还原恢复数据库
(4)可以作数据库级别的 offline 和 online ,但不能作表空间的 offline 和 online
(5)可以修改数据库的归档模式
(6)可以打开和关闭闪回数据库的功能
3、open
如何启动:从mount状态修改到open状态 ==>alter database open
数据库作了什么:按照控制文件的指针寻找到数据库文件和联机日志文件,并且要校验文件的有效性
需要什么条件:需要所有的物理文件都在,并且是好的
控制文件在哪:由初始化参数 control_file 决定,该参数指向几个控制文件,数据库就需要几个文件
我们可以作什么:
数据文件 日志文件都已打开 随意查看 修改使用
但有些操作只能在mount下和nomount下完成 例如改归档模式就只能在mount
open并不是一切皆可
nomount mount open没有子集包含的关系.
alter database open; --不是所有数据库都可以使用 要保证数据文件日志文件是健康的一致的
alter database open read only; --所有oracle数据库都可以使用此方式
只能查询不能修改数据
可以执行本地管理的表空间的磁盘排序
select open_mode from v$database; --查看数据库打开模式
4、受限会话访问模式:(只有拥有restricted session权限的用户才可以创建会话)
alter system enable restricted session;
alter system disable restricted session; 停止受限
管理员授权:
grant restricted session to scott; --授予权限
revoke restricted session from scott; --回收权限
实验启动空实例
创建参数文件 pfile
包含参数
db_name=test
shared_pool_size=100M
修改环境变量
$ORACLE_SID=test
sqlplus /nolog
conn / as sysdba
startup nomount;
实验证明
如果有多个参数文件存在 由$ORACLE_SID的值决定使用哪一个参数文件
如果orcl实例和test实例都启动 怎么连接指定的实例?
实验证明
$ORACLE_SID是操作系统和实例间的关系纽带
nomount
mount
open
一步到位的方法
startup = nomount + mount + open
数据库的启动分 3 个阶段
1、nomount:只加载实例
查看数据库状态:select instance_name,status from v$instance; ==> STARTED
select * from v$sgainfo; ==> 与内存相关的
如何启动:在停止状态 ==> startup nomount
数据库作了什么:1.读取参数文件分配实例
2.产生警报日志
3.分配了内存
4.后台进程启动
需要什么条件:(1)参数文件,目的分配内存和后台进程;
(2)实例管理的目录,目的写警报日志
我们可以作什么: 1)查看部分动态性能视图,即v$等(与内存和后台进程相关的视图)
2)修改初始化参数
3)创建数据库
4)重新创建控制文件
SYS@ora10g> startup nomount
ORACLE instance started.
Total System Global Area 230686720 bytes
Fixed Size 1218676 bytes
Variable Size 75499404 bytes
Database Buffers 150994944 bytes
Redo Buffers 2973696 bytes
SYS@ora10g> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
------------------------ ----------
ora10g STARTED
SYS@ora10g>
2、mount
如何启动:(1)startup mount
(2)已经启动的状态,从nomount到mount状态 ==> alter database mount
数据库作了什么:从参数文件中获得控制文件的位置 加载控制文件到内存
需要什么条件:需要所有的控制文件都在,并且状态是一致的
控制文件在哪:由初始化参数 control_file 决定,该参数指向几个控制文件,数据库就需要几个文件
我们可以作什么: (1)可以查看所有动态性能视图(v$xxx) 但不能查询数据字典
(2)可以移动数据文件和联机日志文件
(3)可以备份还原恢复数据库
(4)可以作数据库级别的 offline 和 online ,但不能作表空间的 offline 和 online
(5)可以修改数据库的归档模式
(6)可以打开和关闭闪回数据库的功能
3、open
如何启动:从mount状态修改到open状态 ==>alter database open
数据库作了什么:按照控制文件的指针寻找到数据库文件和联机日志文件,并且要校验文件的有效性
需要什么条件:需要所有的物理文件都在,并且是好的
控制文件在哪:由初始化参数 control_file 决定,该参数指向几个控制文件,数据库就需要几个文件
我们可以作什么:
数据文件 日志文件都已打开 随意查看 修改使用
但有些操作只能在mount下和nomount下完成 例如改归档模式就只能在mount
open并不是一切皆可
nomount mount open没有子集包含的关系.
alter database open; --不是所有数据库都可以使用 要保证数据文件日志文件是健康的一致的
alter database open read only; --所有oracle数据库都可以使用此方式
只能查询不能修改数据
可以执行本地管理的表空间的磁盘排序
select open_mode from v$database; --查看数据库打开模式
4、受限会话访问模式:(只有拥有restricted session权限的用户才可以创建会话)
alter system enable restricted session;
alter system disable restricted session; 停止受限
管理员授权:
grant restricted session to scott; --授予权限
revoke restricted session from scott; --回收权限
实验启动空实例
创建参数文件 pfile
包含参数
db_name=test
shared_pool_size=100M
修改环境变量
$ORACLE_SID=test
sqlplus /nolog
conn / as sysdba
startup nomount;
实验证明
如果有多个参数文件存在 由$ORACLE_SID的值决定使用哪一个参数文件
如果orcl实例和test实例都启动 怎么连接指定的实例?
实验证明
$ORACLE_SID是操作系统和实例间的关系纽带
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询