电脑基础知识02-04-应用优化的其他方法-60-页_第1页
电脑基础知识02-04-应用优化的其他方法-60-页_第2页
电脑基础知识02-04-应用优化的其他方法-60-页_第3页
电脑基础知识02-04-应用优化的其他方法-60-页_第4页
电脑基础知识02-04-应用优化的其他方法-60-页_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

OracleRDBMS

大型应用优化其他方法

麦思博(北京)软件科技有限公司2011.102025/1/211内容提要临时表的使用方法Logging与Nologging适当使用关于热块问题索引统计数据陈旧问题多块读方法索引与相关参数会话级参数使用方法2025/1/212Oracle临时表临时表的目的:应用中的有的数据只是临时的存储,使用后不再使用;永久表要存放在表中,给磁盘空间带来碎片;临时比变量更有效,可以用SQL语句。Oracle允许在会话或事务其间创建临时表,以保存会话或事务的数据:临时表就是内存表,它不保存到表空间上;临时表的数据仅在会话其间有效;用CREATEGLOBALTEMPORARY完成临表的创建;创建临时表可指定事务级后会话级有效;不专门指定,则在会话结束后才释放;对临时表做DML操作不产生重做日志(REDOLOG)。2025/1/213Oracle临时表-语法createglobaltemporarytabletable_name[tabledefinition]oncommitdeleterows;在提交后删除行数据:临时表可在提交后删除,语法为:为会话保持数据:临时表可为会话保持数据,语法为:createglobaltemporarytabletable_name[tabledefinition]oncommitpreserverows;2025/1/214Oracle临时表-例子SQL>createglobaltemporarytablemyempasselect*fromemp;表已创建。

SQL>select*frommyemp;未选定行

SQL>insertintomyempvalues('赵元杰',32456.99,10,'12');已创建1行。

SQL>select*frommyemp;ENAMESALDEPTNOTEL-------------------------------------------------------赵元杰32456.991012

SQL>connectsys/sys已连接。SQL>connectzhao/zhao已连接。SQL>select*frommyemp;未选定行创建临时表:带GLOBALTEMPORARY创建;会话结束自动清除:2025/1/215内容提要临时表的使用方法Logging与Nologging适当使用关于热块问题索引统计数据陈旧问题多块读方法索引与相关参数会话级参数使用方法2025/1/216Logging&Nologging什么是redo当块改变时,Oracle记录改变向量,并发将这些存放SGA日志缓冲区由LGWR写到日志文件中简单说:Redo=Transactions2025/1/217Logging&Nologging何时设置为NOLOGGING

下面情况可将表设置为NOLOGGINGDIRECTLOAD(SQL*Loader)DIRECTLOADINSERT(usingAPPENDhint)CREATETABLE...ASSELECTCREATEINDEXALTERTABLEMOVEALTERTABLE...MOVEPARTITIONALTERTABLE...SPLITPARTITIONALTERTABLE…ADDPARTITION(ifHASHpartition)2025/1/218Logging&Nologging下面情况可将表设置为NOLOGGINGALTERTABLE…MERGEPARTITIONALTERTABLE…MODIFYPARTITIONADDSUBPARTITONCOALESCESUBPARTITONREBUILDUNUSABLEINDEXESALTERINDEX...SPLITPARTITIONALTERINDEX...REBUILDALTERINDEX...REBUILDPARTITION2025/1/219Logging&Nologging设置索引为NOLOGGING可加快处理速度ALTERTABLE…NOLOGGING;INSERT/*+nologging*/…下面情况可采用NOLOGGING--先设置为NOLOGGINGSQL>ALTERINDEXnew_indexNOLOGGING;SQL>ALTERINDEXnew_indexREBUILD;--当暂时将表或索引设置成NOLOGGING时,别忘了再将它们设置loggingselect'altertable'||table_name||'logging;'fromuser_tableswheretable_namelike'%STATS%';

select'alterindex'||index_name||'logging;'fromuser_indexes;2025/1/2110Logging&Nologging创建表可指定NOLOGGING

--创建时设置为NOLOGGINGSQL>CREATE表指定NOLOGGING后,下面语句不产生日志:SQL>INSERTINTOnew_table_nolog_test...SQL>UPDATEnew_table_nolog_testSET...SQL>DELETEFROMnew_table_nolog_test...SQL>INSERTINTOnew_table_nolog_test...SQL>UPDATEnew_table_nolog_testSET...SQL>DELETEFROMnew_table_nolog_test...--INSERT/*+APPEND+/…ALTERTABLEnew_table_nolog_testMOVE…ALTERTABLEnew_table_nolog_testMOVEPARTITION…--创建时设置为NOLOGGINGSQL>CREATETABLEnew_table_nolog_testNOLOGGING(….);2025/1/2111NOLOGGING特殊的创建表可指定NOLOGGING限制写日志修改不可恢复修改不能传递到备用库谨慎使用NOLOGGING处于主要的生产数据库不要设置NOLOGGING经常被其他数据库读取的数据库不要设置NOLOGGING千万不能dataguard上用(如果已经做了database

forcelogging就没有事)2025/1/2112NOLOGGING用提示使用NOLOGGINGinsert/*+append+/intomytablevalues(1,‘alan’);

Oracle归档模式下当表为logging状态时,append/noappend都生成redo当表为nologging状态时,只有append不生成redoOracle非归档模式下表在logging/nologing下:append模式都不生成redo,表在logging/nologing下:noappend模式下都生成redo2025/1/2113在提示中使用NOLOGGING可在提示中使用NOLOGGING可提示使用NOLOGGING和并行:insert/*+APPENDNOLOGGINGPARALLEL(table_name,4)*/intotable_nameselect/*+PARALLEL(table_name,4)*/fromtable_name@dblink;2025/1/2114数据库级取消NOLOGGING从9.2开始,可将数据库或表空间设置为LOGGING(取消NOLOGGING)数据库级取消(强制产生日志):表空间级取消(强制产生日志):将数据库或表空间设置为LOGGING所有的NOLOGGING将无效ALTERDATABASEFORCELOGGING;

ALTERDATABASENOFORCELOGGING;ALTERTABLESPACEtablespace_nameFORCELOGGING;

ALTERTABLESPACEtablespace_nameNOFORCELOGGING;2025/1/2115内容提要临时表的使用方法Logging与Nologging适当使用关于热块问题索引统计数据陈旧问题多块读方法索引与相关参数会话级参数使用方法2025/1/2116Oracle热块(hotblock)hotblock指的是同时有若干个session,同时对一个block进行操作,导致此block比较忙;导致block比较忙的原因是:Oracle数据库的数据存放的最小单位就是block,数据每次读取数据的时候只能以block为单位;如果有多条记录存放在一个block上的话,那么导致多个session访问同一个block的可能性就越大;2025/1/2117Oracle热块(hotblock)hotblock解决方法:1、增大databuffer;2、增加freelist,减小pctused(将一个block上可以使用的空间减少),引起block数据存放的较少,可以提高应用的访问并发率,减少hotblock的产生;3、增加回滚段数目,增大initrans,考虑使用LMT,确认是不是由于热点块造成(如果是可以用反转索引,或者用更小块大小);4、可以建立block较小的表空间,将热点对象移动到此表空间上去;5、优化应用,优化索引,提高索引的命中率;2025/1/2118Oracle热块(hotblock)Hotblock诊断

热块与“bufferbusywaits”等待事件有关1)查询V$session_wait视图:2)如果上面块在忙等待,则查询这一块的名称和类型Selectp1"File#",p2"Block#",p3"ReasonCode"fromv$session_waitwhereevent='bufferbusywaits';Selectowner,segment_name,segment_typeFromdba_extentswherefile_id=&P1and&P2betweenblock_id

andblock_id+blocks-1;2025/1/2119Oracle热块(hotblock)Hotblock诊断(续)热块一旦被确定,则使用v$segment_statistics性能视图促使块水平统计的实时监控。这一过程使得DBA识别与独立列表与索引有关的问题也可以查询dba_data_files以确定卷入等待的文件的file_name,方法是使用v$session_wait中的P1查询V$SEGMENT_STATISTICS视图SELECTowner,object_type,object_name,valueFROMV$SEGMENT_STATISTICSWHERE(statistic_namelike'%read%‘ORstatistic_namelike'%write%')ORDERBYvaluedesc2025/1/2120内容提要临时表的使用方法Logging与Nologging适当使用关于热块问题索引统计数据陈旧问题多块读方法索引与相关参数会话级参数使用方法2025/1/212122/90索引碎片分析当表的数据不断被删除后,与之相关的索引仍然保留那么这些无用的索引数据项是多少呢?Analyzeindex…validatestructure检查索引块冲突校验索引的大小结果放入index_stats

表中,并生成有关索引的详细视图索引统计数据陈旧问题2025/1/2122ANALYZEINDEX…validatestructure命令SELECTDEL_LF_ROWS/LF_ROWS“Wasted”FROMINDEX_STATS如果浪费数值“Wasted”>0.2

或索引节点利用率<60%(PCT_USED<60)索引有效性分析SQL>ANALYZEINDEX&index_nameVALIDATESTRUCTURE;colnameheading'IndexName'formata30col

del_lf_rowsheading'Deleted|LeafRows'format99999999col

lf_rows_usedheading'Used|LeafRows'format99999999colratioheading'%Deleted|LeafRows'format999.99999--SELECTname,del_lf_rows,lf_rows-del_lf_rows

lf_rows_used,to_char(del_lf_rows/(lf_rows)*100,'999.99999')ratioFROMindex_statswherename=upper('&index_name');--当删除的比率(ratio)大于15-20%时,需要对索引进行重建2025/1/212310g/11g基于CBO模式,这种模式需要访问数据字典统计数据;表/索引统计要尽量及时,准确当统计数据不要太旧,误导优化器当统计数据太旧,要及时重新搜集!统计数据过时问题2025/1/2124内容提要临时表的使用方法Logging与Nologging适当使用关于热块问题索引统计数据陈旧问题多块读方法索引与相关参数会话级参数使用方法2025/1/2125DB_FILE_MULTIBLOCK_READ_COUNT参数:

表示conference磁盘读取的块数量;通常发生在全表扫描(FullTableScan)和快速全索引扫描(FastFullIndexScan)时

尽管这个参数已经由DBA设置,但开发人员可根据目前的具体需要在会话设置,如:DB_FILE_MULTIBLOCK_READ_COUNTSQL>connectscott/tiger@orclSQL>altersessionsetDB_FILE_MULTIBLOCK_READ_COUNT=16;2025/1/2126DB_FILE_MULTIBLOCK_READ_COUNT参数的大小探测方法:

大小要根据当前OS运行的I/O能力来设置如何确定这个参数的呢?,只有手工办法:1.查询Oracle块大小和会话级设置:DB_FILE_MULTIBLOCK_READ_COUNT--目前8i的db_file_multiblock_read_count参数为:db_file_multiblock_read_count8db_block_sizeinteger8192--修改db_file_multiblock_read_count参数前要进行下面的测试--以确定db_file_multiblock_read_count参数的大小SQL>settimingonSQL>setautotraceon--1.设置会话级参数:altersessionsetdb_file_multiblock_read_count=32;2025/1/2127DB_FILE_MULTIBLOCK_READ_COUNT参数的大小探测方法:

2.设置会话跟踪和做一个实际查询操作:DB_FILE_MULTIBLOCK_READ_COUNT--2.设置会话跟踪:altersessionsetevents'10046tracenamecontextforever,level10';--altersessionsetevents'10046tracenamecontextforever,level12';--3.全表扫描测试:

select/*+full(a)*/count(*)frombaan.TTFGLD416888a;--4.取消会话跟踪:altersessionsetevents'10046tracenamecontextoff';2025/1/2128DB_FILE_MULTIBLOCK_READ_COUNT参数的大小探测方法:

3.分析会话跟踪数据-看是否能采用这个参数:DB_FILE_MULTIBLOCK_READ_COUNT--5.检查跟踪文件:SQL>showparameterUSER_DUMP_DEST$文件名为:baanivc4_ora_18052.trc/oracle/admin817/baanIVc4/udump/baanivc4_ora_18052.trcOracle8iEnterpriseEditionRelease8.1.7.0.0-64bitProductionWiththePartitioningoptionJServerRelease8.1.7.0.0-64bitProductionORACLE_HOME=/oracle/817Systemname: SunOSNodename: BCA-ERPRelease: 5.8Version: Generic_108528-16Machine: sun4uInstancename:baanIVc4Redothreadmountedbythisinstance:1Oracleprocessnumber:11Unixprocesspid:18052,image:oracle@BCA-ERP(TNSV1-V3)2025/1/2129DB_FILE_MULTIBLOCK_READ_COUNT参数的大小探测方法:

3.分析会话跟踪数据-看是否能采用这个参数(续):DB_FILE_MULTIBLOCK_READ_COUNT--5.检查跟踪文件:***2010-01-1009:34:08.389WAIT#0:nam='SQL*Netmessagefromclient'ela=0p1=1413697536p2=1p3=0=====================PARSINGINCURSOR#1len=56dep=0uid=0oct=3lid=0tim=0hv=1986181661ad='bdea11e8'select/*+full(a)*/count(*)frombaan.TTFGLD416888aENDOFSTMTPARSE#1:c=0,e=0,p=0,cr=0,cu=0,mis=1,r=0,dep=0,og=4,tim=0EXEC#1:c=0,e=0,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=4,tim=0WAIT#1:nam='SQL*Netmessagetoclient'ela=0p1=1413697536p2=1p3=0……WAIT#1:nam='fileopen'ela=0p1=0p2=0p3=0WAIT#1:nam='dbfilescatteredread'ela=0p1=9p2=61562p3=30WAIT#1:nam='dbfilescatteredread'ela=0p1=13p2=1093577p3=13WAIT#1:nam='dbfilescatteredread'ela=0p1=13p2=1093591p3=31WAIT#1:nam='dbfilescatteredread'ela=0p1=16p2=854824p3=32WAIT#1:nam='dbfilescatteredread'ela=0p1=16p2=854856p3=32WAIT#1:nam='dbfilesequentialread'ela=0p1=16p2=854888p3=1WAIT#1:nam='dbfilescatteredread'ela=0p1=17p2=3025147p3=32WAIT#1:nam='dbfilescatteredread'ela=0p1=17p2=3025179p3=32表示系统使用过32多块读2025/1/2130db_file_multiblock_read_count参数调整:

10g版本为自动调整(不设置就表示自动管理)默认为I/O可执行的最大值与平台有关,不能超过缓冲区的10%通常相当于1MB对数据仓库/DSS可能不合适DB_FILE_MULTIBLOCK_READ_COUNT2025/1/2131DB_FILE_MULTIBLOCK_READ_COUNTOracle10gR2版本与这个参数相关的功能有:V$PROCESS_MEMORY辅助监视自动PGA管理与确定PGA_AGGREGATE_TARGET参数的最佳设置如果没有明确设置DB_FILE_MULTIBLOCK_READ_COUNT参数,则表示为自动调整大小与平台有关,但文档经常说明为1MB

SYS@orcl>selectisdefault,description2fromv$parameter3wherename='db_file_multiblock_read_count';ISDEFAULTDESCRIPTION----------------------------------------FALSEdbblocktobereadeachIO2025/1/2132内容提要临时表的使用方法Logging与Nologging适当使用关于热块问题索引统计数据陈旧问题多块读方法索引与相关参数会话级参数使用方法2025/1/2133Optimizer_index_cost_adj参数:

用来调整“基于代价的优化”相对于全表扫描访问代表一个百分比,取值范围在1到10000之间;可理解为Oracle执行多块(MultiBlock)I/O(比如全表扫描)的代价与执行单块(Single-block)I/O代价的相对比例缺省值100:表示索引扫描成本等价转换与全表扫描成本若减小,则CBO倾向于使用索引(即单块I/O),反之则倾向于全表扫描(多块I/O)OPTIMIZER_INDEX_COST_ADJ2025/1/2134Optimizer_index_cost_adj参数调整:

多数OLTP系统:OPTIMIZER_INDEX_COST_ADJ可以设置在10到50之间对于数据仓库和DSS系统,需要反复调整取得一个合理值

更为具体的可以根据统计信息,dbfilescatteredreads/dbfilesequentialreads来计算OPTIMIZER_INDEX_COST_ADJ2025/1/2135索引与多块读取数量select*fromt2wheren1=45;--表扫描代价15altersessionsetDB_FILE_MULTIBLOCK_READ_COUNT=4;SELECTSTATEMENTOptimizer=CHOOSE(Cost=16Card=15)TABLEACCESS(BYINDEXROWID)OF'T2'(Cost=16Card=15)INDEX(RANGESCAN)OF'T_I2'(NON-UNIQUE)(Cost=1Card=15)(表扫描代价23)altersessionsetDB_FILE_MULTIBLOCK_READ_COUNT=16;SELECTSTATEMENTOptimizer=CHOOSE(Cost=10Card=15)TABLEACCESS(FULL)OF'T2'(Cost=10Card=15)2025/1/2136索引与单块读取调整select*fromt2wheren1=45; --indexaccesscostwas16altersessionsetOPTIMIZER_INDEX_COST_ADJ=50;SELECTSTATEMENTOptimizer=CHOOSE(Cost=8Card=15)TABLEACCESS(BYINDEXROWID)OF'T2'(Cost=8Card=15)INDEX(RANGESCAN)OF'T_I2'(NON-UNIQUE)(Cost=1Card=15)altersessionsetOPTIMIZER_INDEX_COST_ADJ=25;SELECTSTATEMENTOptimizer=CHOOSE(Cost=4Card=15)TABLEACCESS(BYINDEXROWID)OF'T2'(Cost=4Card=15)INDEX(RANGESCAN)OF'T_I2'(NON-UNIQUE)(Cost=1Card=15)2025/1/2137OPTIMIZER_INDEX_CACHING参数:

告诉Oracle

索引在内存的数据缓冲区中的可能性有多大,即向优化器暗示位于Oracle数据缓冲区的索引的数量参数设置将会影响到“基于代价的优化”做出的对一个表连接(嵌套循环)使用索引还是使用全表扫描选择参数optimizer_index_caching是一个百分比参数,有效取值范围是0到100OPTIMIZER_INDEX_CACHING2025/1/21382025/1/21Oracle数据库设计与性能39/90OPTIMIZER_INDEX_CACHING参数调整:

这个参数使得我们能够调节“基于代价的SQL优化器”的行为,从而选择最好的方式来访问想要的SQL查询结果:嵌套循环连接哈希连接访问全索引扫描全表扫描访问

optimizer_index_caching设置为较大的百分比,可以使嵌套循环连接在优化器看起来更便宜,从而优化器更有可能选择进行嵌套循环连接而不是哈希连接或者归并排序连接OPTIMIZER_INDEX_CACHING2025/1/21392025/1/21Oracle数据库设计与性能40/90Oracle9i/10g/11g的变化:从Oracle9i开始,运行配置多种块大小:创建表空间的块大小为2K,4K,8K,16K和32K并使用相似大小的表和索引来匹配表空间我们应该理解这些新变化:大数据块的输入输出操作的边缘开销可忽略不计取一个32K大小的数据块的开销仅比取一个2K大小的数据块的开销多1%,因为99%的磁盘输入输出操作都是用来把磁盘读写头的移动到相应的磁盘柱面和轨道OPTIMIZER_INDEX_CACHING2025/1/21402025/1/21Oracle数据库设计与性能41/90索引与大块的表空间:当索引被存储在大块表空间中时使用起来更有效。更深层的原因是:B-树可以更好地被平衡并且对顺序索引节点访问而言有更小的磁盘开销著名作家RobinSchumacher的研究表明32K块大小的Oracle索引在执行索引范围扫描时需要更少的逻辑输入输出,并且性能更高OPTIMIZER_INDEX_CACHING2025/1/21412025/1/21Oracle数据库设计与性能42/90创建索引缓冲:可在数据库处于活动状态创建索引缓冲首先,把所有索引都移至某个单独的表空间,定义成一个单独的数据缓冲区然后将参数optimizer_index_caching设置成正确的值分配一个32K的缓冲区空间altersystemsetdb_32k_cache_size=100m;创建块大小32K的表空间createtablespaceindex_ts_32k…blocksize32k;OPTIMIZER_INDEX_CACHING2025/1/21422025/1/21Oracle数据库设计与性能43/90创建索引缓冲(续):把所有索引移至这个32K的表空间中该命令把所有索引移至这个32K的表空间而无需中断当前存在的索引查询。它把索引重建成临时段,并确保新索引可用后在删除旧索引alterindexcust_idxrebuildonlinetablespaceindex_ts_32k;OPTIMIZER_INDEX_CACHING2025/1/21432025/1/21Oracle数据库设计与性能44/90创建索引缓冲(续):既然所有索引已经被隔离到一个单独的表空间和索引缓冲区中,我们就可以执行数据字典脚本来预见相对精确度,即我们期望在内存索引缓冲区中看到的索引的数量:OPTIMIZER_INDEX_CACHINGSelectvalue-blocksoptimizer_index_cachingFromv$parameterp,

dba_segmentsswherename='db_32k_cache_size'Andtablespace_name=INDEX_TS_32K';2025/1/2144OPTIMIZER_INDEX_CACHING创建索引缓冲与嵌套连接:只有采用(USE_NL)时才使用设置OPTIMIZER_INDEX_CACHING

参数,如:SQL>altersessionsetoptimizer_index_caching=90;

Sessionaltered.SQL>showparameteroptimizer_index_caching

NAMETYPEVALUE---------------------------------------------------------------------------optimizer_index_cachinginteger902025/1/2145SKIP_UNUSABLE_INDEXESskip_unusable_indexes参数:在会话中设置,表示要跳过无效的索引

在EXP中表示要跳过无效的索引(不导出)在IMP中表示要跳过无效的索引(不维护)索引为什么无效:当将表从一个表空间迁移到另外新表空间后,原来的索引自动变为无效

可用alterindexidxtunusable;命令使索引失效无效的索引的状态在user_indexes.status列的值为“UNUSABLE”2025/1/21462025/1/2147/90SKIP_UNUSABLE_INDEXES索引无效(UNUSABLE

)的处理:可设置skip_unusable_indexes跳过失效的索引这个参数可在系统或会话级上设置,如:SQL>select*fromawhereid=1;select*fromawhereid=1*第1行出现错误:ORA-01502:索引'TEST.IDX_A_ID'或这类索引的分区处于不可用状态SQL>altersystemsetskip_unusable_indexes=truescope=memory;系统已更改。SQL>select*fromawhereid=1;2025/1/2147SKIP_UNUSABLE_INDEXES索引无效处理建议:经常检查关键索引是否失效直接查询dba_indexes的status列是否为“UNUSABLE”即可对于处于无效的索引,建议找时间要重建,而不是一味的跳过,跳过只是一种临时的办法2025/1/2148内容提要临时表的使用方法Logging与Nologging适当使用关于热块问题索引统计数据陈旧问题多块读方法索引与相关参数会话级参数使用方法2025/1/2149参数设置与API用“ALTERSYSTEM”

命令修改实例参数:<param>是参数的完整名称,而<value>是要设置的具体值,如Audit_trail=TRUEcomment是注释字串deferred表示参数延迟生效MEMORY[Default]:在当前实例内存有效SPFILE:只写到spfileBOTH:memory+spfileALTERSYSTEMSET<param>[=]<value>[comment'<text>'][deferred][SCOPE={memory|spfile|both}][sid={'<sid>'|'*'}];2025/1/2150参数设置与API用“ALTERSYSTEM”

命令修改实例参数:实例级参数的修改需要具有SYSDBA:--系统级半永久化参数:ALTERSYSTEMSETparam=valueSCOPE=MEMORY;--只存储在参数文件的参数:ALTERSYSTEMSETparam=valueSCOPE=SPFILE;--修改后必须重启动才有效的参数:ALTERSYSTEMSETparam=valueSCOPE=BOTH;--SQL>altersystemsetdb_cache_size=512Mscope=both;系统已更改。2025/1/2151参数设置与APIDBA对参数的修改与影响范围:DBA用ALTERSYSTEM修改参数影响整个实例DBA也可用ALTERSESSION修改参数只影响该会话Oracle系统参数的会话级修改问题:国内多数开发人员认为修改参数应该是DBA的工作,这是对Oracle参数的误解Oracle系统设计早考虑到参数影响范围这个问题会话级的修改=按照该会话的需要进行设置(不强加将参数实施到别的会话)会话级参数的修改有2:命令方式与API方法

2025/1/2152参数设置与API会话级修改参数方法1:方法1:ALTERSESSIONset<parameter>=<value>;会话级修改参数方法2:DBMS_SYSTEM包:DBMS_SYSTEM.set_bool_param_in_sessionDBMS_SYSTEM.set_int_param_in_session--会话级参数设置:altersessionsetworkarea_size_policy=manualEXECUTEDBMS_SYSTEM.SET_INT_PARAM_IN_SESSION

(9,27,'sort_area_size',65535000);2025/1/2153会话级可修改的参数可用ALTERSESSION修改的参数:ISSES_MODIFIABLE=TRUE会话级可修改查询会话级可修改的参数:--11gR1colnamefora50colvaluefora20selectname,value,ISSES_MODIFIABLEFROMV$PARAMETERWHEREISSES_MODIFIABLE='TRUE';NAMEVALUEISSES---------------------------------------------------------------------------timed_statisticsTRUETRUEtimed_os_statistics0TRUEnls_languageAMERICANTRUEnls_territoryAMERICATRUE……asm_power_limit1TRUEsqltune_categoryDEFAULTTRUEtracefile_identifierTRUEmax_dump_file_sizeunlimitedTRUE已选择106行。2025/1/2154会话级可修改的参数可用ALTERSESSION修改的参数:ISSES_MODIFIABLE=TRUE会话级可修改查询会话级可修改的参数:SQL>select*fromv$version;BANNER------------------------------------------------------------------------OracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-ProductionPL/SQLRelease11.2.0.1.0-ProductionCORE 11.2.0.1.0 ProductionTNSfor32-bitWindows:Version11.2.0.1.0-ProductionNLSRTLVersion11.2.0.1.0-ProductionSQL>selectname,value,ISSES_MODIFIABLE2FROMV$PARAMETERWHEREISSES_MODIFIABLE='TRUE';NAMEVALUEISSES----------------------------------------------------------------------timed_statisticsTRUETRUEtimed_os_statistics0TRUE……m

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论