1.3.3
- 检查数据库启动情况
ps -ef | grep oracle - 启动数据库
sqlplus /nolog
conn / as sysdba - 修改
fast_start_mttr_target
参数为初始值-50,缺省scope
和sid
,查看修改结果
show parameter fast;
alter system set parameter = 250;
show parameter fast;
!
strings spfilewilson.ora - 修改所有实例内存里的
fast_start_mttr_target
参数为当前值+10,查看修改结果
exit
show parameter fast
alter system set fast_start_mttr_target = 260 scope = memory;
show parameter fast
!
strings spfilewilson.ora - 修改所有实例内存和
spfile
的fast_start_mttr_target
为当前值-10,添加注释“hello wilson”,格式化查询fast_start_mttr_target
的修改结果
show parameter fast
alter system set fast_start_mttr_target = 250 comment = ‘hello wilson’
select name,value,update_comment from v$parameter where name = ‘fast_start_mttr_target’;
col name format a10//错误
col value format a10//错误
col update_comment format a20//错误
/
!
strings spfilewilson.ora - 查询不能立即修改的参数的
name
和issys_modifiable
select name,issys_modifiable from v$parameter where issys_modifiable = ‘DEFERRED’;
—
fast_start_mttr_target
是 Oracle 数据库中的一个初始化参数,用于控制数据库在崩溃后的目标恢复时间(MTTR)。它的单位是秒,设置该参数后,Oracle 会自动调整数据库的写入速度、检查点频率等,以确保在发生崩溃时能够在设定的时间内恢复。
使用 Oracle 参数管理与查询技巧
在管理 Oracle 数据库的过程中,系统参数的设置和调整是常见任务。本文将基于实际操作示例,介绍如何高效地使用 ALTER SYSTEM
命令、查询参数的当前状态,以及一些隐藏的参数技巧。
1. 检查与调整数据库参数
要检查参数的默认值及当前值,可以使用 SHOW PARAMETER
命令。例如,使用以下命令来查看 fast_start_mttr_target
的当前值:
SQL> show parameter fast_start_mttr_target;
2. 修改参数:示例操作
我们可以使用 ALTER SYSTEM SET
来动态修改参数,如下所示:
SQL> alter system set fast_start_mttr_target = 250;
System altered.
该操作将 fast_start_mttr_target
设置为 250,以优化数据库恢复时间。
3. 查询和格式化显示参数
通过 V$PARAMETER
视图,能查看到所有参数的详情,包括当前值、默认值、是否可以动态修改等。例如,查看参数的 UPDATE_COMMENT
:
SQL> select name, value, update_comment from v$parameter where name = 'fast_start_mttr_target';
为了格式化输出,可以设置列宽:
SQL> col name format a10
SQL> col value format a10
SQL> col update_comment format a20
SQL> /
4. 确保修改在内存或 SPFILE 中生效
通过 SCOPE
选项,可以控制参数是只在内存中生效(SCOPE=MEMORY
),还是永久存入 SPFILE
,例如:
SQL> alter system set fast_start_mttr_target = 260 scope=memory;
System altered.
这样可以在测试环境中即时生效,而不会影响持久化设置。
5. 查看不能立即修改的参数
一些参数不能立即修改,而是设置为“延迟生效”。这些参数可通过查询 V$PARAMETER
视图中 ISSYS_MODIFIABLE
列来确认:
SQL> select name, issys_modifiable from v$parameter where issys_modifiable = 'DEFERRED';
6. 隐含参数的作用
Oracle 中有些隐藏参数以 _
开头,比如 _fast_start_mttr_target
,这些参数通常用于优化、调试,非公开使用,不建议随意更改。