ALTER SYSTEM SET "_high_priority_processes"='LMS*|VKTM|LGWR' SCOPE=SPFILE;
6.3 SecureFiles 参数 (11g+)
参数说明:11g 引入的改进 LOB 存储。
设置示例:
-- 启用 SecureFiles
ALTER SYSTEM SET db_securefile='PERMITTED' SCOPE=SPFILE;
– 创建 SecureFiles LOB
CREATE TABLE doc_table (
id NUMBER,
doc CLOB
) LOB(doc) STORE AS SECUREFILE (
COMPRESS HIGH
ENCRYPT USING ‘AES256’
CACHE
);
7. 设置模板(19c 示例)
-- 初始化参数文件(spfile)设置模板
ALTER SYSTEM SET DB_BLOCK_SIZE=8192 SCOPE=SPFILE;
ALTER SYSTEM SET DB_FILE_MULTIBLOCK_READ_COUNT=128 SCOPE=BOTH;
ALTER SYSTEM SET DB_WRITER_PROCESSES=8 SCOPE=SPFILE;
ALTER SYSTEM SET DISK_ASYNCH_IO=TRUE SCOPE=SPFILE;
ALTER SYSTEM SET LOG_BUFFER=16777216 SCOPE=SPFILE;
ALTER SYSTEM SET FAST_START_MTTR_TARGET=180 SCOPE=BOTH;
ALTER SYSTEM SET DB_CACHE_SIZE=8G SCOPE=BOTH;
ALTER SYSTEM SET DB_KEEP_CACHE_SIZE=2G SCOPE=BOTH;
ALTER SYSTEM SET DB_RECYCLE_CACHE_SIZE=1G SCOPE=BOTH;
8. 诊断与验证视图
-- 查看当前参数值
SELECT name, value, isdefault FROM v$parameter WHERE name LIKE '%db_cache%';
– 查看 I/O 等待事件
SELECT event, total_waits, time_waited FROM v$system_event WHERE event LIKE ‘db file%’;
– 查看检查点频率
SELECT mttr_target_for_estimate, estimated_mttr FROM v$instance_recovery;
SELECT name, total,
ROUND(total-free,2) used,
ROUND(free,2) free,
ROUND((total-free)/total*100,2) pctused
FROM (
SELECT 'SGA' name,
(SELECT SUM(value/1024/1024) FROM v$sga) total,
(SELECT SUM(bytes/1024/1024) FROM v$sgastat WHERE name='free memory') free
FROM dual
)
UNION
SELECT name, total,
ROUND(used,2) used,
ROUND(total-used,2) free,
ROUND(used/total*100,2) pctused
FROM (
SELECT 'PGA' name,
(SELECT value/1024/1024 total FROM v$pgastat WHERE name='aggregate PGA target parameter') total,
(SELECT value/1024/1024 used FROM v$pgastat WHERE name='total PGA allocated') used
FROM dual
);
9.2 I/O 性能监控
操作系统层面:
每周检查内存和 I/O 统计信息
每月分析 AWR 报告识别性能趋势
季度性进行存储性能评估
容量规划:
监控表空间使用情况
预测存储增长需求
定期评估内存需求变化
12. 附录:参数计算脚本示例(SQL)
-- 计算建议 DB_CACHE_SIZE
SELECT ROUND((SELECT VALUE FROM v$parameter WHERE name='sga_max_size') * 0.6) AS suggested_db_cache
FROM dual;
– 计算建议 LOG_BUFFER
SELECT GREATEST(1048576, 524288 * (SELECT VALUE FROM v$parameter WHERE name=‘cpu_count’)) AS suggested_log_buffer