当前位置: 首页 > 工具软件 > bct > 使用案例 >

BCT query 隐含参数

步兴德
2023-12-01
 NameValueDescComment
1

_bct_public_dba_buffer_size

16776960total size of all public change tracking dba buffers, in bytes 
2

_bct_initial_private_dba_buffer_size

0initial number of entries in the private change tracking dba buffers 
3

_bct_bitmaps_per_file

8number of bitmaps to store for each datafile 
4

_bct_file_block_size

0block size of change tracking file, in bytes 
5

_bct_file_extent_size

0extent size of change tracking file, in bytes 
6

_bct_chunk_size

0change tracking datafile chunk size, in bytes 
7

_bct_crash_reserve_size

262144change tracking reserved crash recovery SGA space, in bytes 
8

_bct_buffer_allocation_size

2097152size of one change tracking buffer allocation, in bytes 
9

_bct_buffer_allocation_max

1073741824maximum size of all change tracking buffer allocations, in bytes 
10

_bct_buffer_allocation_min_extents

1mininum number of exents tents to allocate per buffer allocation 
11

_bct_fixtab_file

 change tracking file for fixed tables 
12_bct_health_check_interval60CTWR health check interval (seconds), zero to disable 
13_bct_public_dba_buffer_dynresize 2allow dynamic resizing of public dba buffers, zero to disable
  • Allow dynamic resizing of public dba buffers:
    • Disable:
      • Set to 0
      • Require set _bct_public_dba_buffer_maxsize not 0
      • Require set _bct_public_dba_buffer_size not 0
    • Enable:
      • Set to 1
        • The DBA buffer size got doubled
      • Set to 2:
        • The DBA buffer size got tripled 
14_bct_public_dba_buffer_dynresize_delay3600control frequency of delay dynamic resizing of public dba buffers 
15_bct_public_dba_buffer_maxsize0max buffer size permitted for public dba buffers, in bytes 
16_bct_mrp_timeout5CTWR MRP wait timeout (seconds), zero to wait forever 
17_backup_min_ct_unused_optim2097152mimimun size in bytes of change tracking to apply unused space optimuzation

List the parameter name and its value:

set lines 1000;
col name for a30;
col value for a20;
col description for a20;
select a.KSPPINM name,b.KSPPSTVL value , a.KSPPDESC description from x$ksppi a,x$ksppcv b where a.INDX=b.INDX and a.KSPPINM like '%_bct%';
 

List the value of the parameter:

select KSPPSTVL from x$ksppcv  where INDX in (select INDX from x$ksppi where KSPPINM='&1')

等待事件问题解决:block change tracking buffer space:

Wait is related to the sizing / usage of the CTWR dba buffer in the Large Pool memory structure more ...

Solutions

Problem: When a session waits on the "Block Change Tracking Buffer" event, it indicates that there was a wait for space in the CTRW dba buffer. If this happens too often the performance of Backups and/or the entire database can suffer. There are several alternatives to fixing this if it occurs in your system.   Solution 1: Review the location of the change-tracking file to ensure that it's not co-located on disks with other heavily used or "HOT" files. For example, do not locate the change-tracking file on the same disk with your redo or archive files.   Solution 2: Consider changing the value of Large_pool_size or the hidden parameter _bct_public_dba_buffer_size to a larger value. NOTE: Always check with Oracle Support before using a hidden parameter value as Oracle may not support these types of changes ( _bct_public_dba_buffer_size = total size of all public change tracking dba buffers).   Solution 3: Turn off the BCT feature so that it does not require the CTWR dba buffer.  

问题:当会话等待“块更改跟踪缓冲区”事件时,它指示CTRW dba缓冲区中存在空间等待。如果这种情况经常发生,备份和/或整个数据库的性能都会受到影响。如果在您的系统中发生这种情况,有几种替代方法可以修复它。解决方案1:检查更改跟踪文件的位置,以确保它没有与其他频繁使用的或“热”文件一起位于磁盘上。例如,不要将更改跟踪文件与重做或存档文件放在同一个磁盘上。解决方案2:考虑将Large_pool_size或隐藏参数_bct_public_dba_buffer_size更改为更大的值。注意:在使用隐藏参数值之前,一定要检查Oracle支持,因为Oracle可能不支持这些类型的更改(_bct_public_dba_buffer_size =所有公共更改跟踪dba缓冲区的总大小)。解决方案3:关闭BCT功能,使其不需要CTWR dba缓冲区。

Expanded Definition

When data blocks change, shadow processes track the changed blocks in a private area of memory at the same time they generate redo. When a commit is issued, the BCT information is copied to a shared area in Large Pool called 'CTWR dba buffer'. At the checkpoint, a new background process, Change Tracking Writer (CTWR), writes the information from the buffer to the change-tracking file. If contention for space in the CTWR dba buffer occurs, a wait event called, 'Block Change Tracking Buffer Space' is recorded. By default, the CTWR process is disabled because it can introduce some minimal performance overhead on the database. You can query V$BLOCK_CHANGE_TRACKING table to determine whether change tracking is enabled and CTWR dba buffer is being used: SELECT status FROM v$block_change_tracking If the CTWR process is enabled, you can view the size of the CTWR dba buffer by looking at v$sgastat: SELECT * FROM v$sgastat WHERE name like 'CTWR%';

当数据块更改时,影子进程在生成 redo 的同时,在内存的一个私有区域中跟踪更改的块。当发出提交时,BCT信息被复制到名为“CTWR dba buffer”的大池中的共享区域。在检查点,一个新的后台进程,更改跟踪写入器(CTWR),将信息从缓冲区写入更改跟踪文件。如果CTWR dba缓冲区中发生空间争用,将记录一个名为“块更改跟踪缓冲区空间”的等待事件。默认情况下,CTWR进程是禁用的,因为它会在数据库上引入一些最小的性能开销。你可以查询 V $ BLOCK_CHANGE_TRACKING 表来确定是否更改跟踪启用和CTWR dba使用缓冲区: SELECT status FROM v$block_change_tracking; 如果启用了 CTWR 过程,您可以查看CTWR dba缓冲区的大小通过观察V $ sgastat: SELECT * FROM v$sgastat WHERE name like 'CTWR%';


 

 类似资料: