关于应用优化(讨论)
关于应用优化(讨论)1.从top sql中找出最耗资源的SQL 2.提高绑定率 2.1 如果可以修改程序,那么就把常量用变量替换 对于sql语法采用绑定变量的写法 如 java:使用?代替变量 plsql:采用绑定变量的写法,用":"来代替变量. 2.2 cursor_sharing = similar (可以在不修改程序的前提下提高绑定率) 3. 减少软解析次数 3.1 初始化参数中增加session_cache_cursors数 3.2 java:,sql采用prepared/callable statement.保持cursor的时间 3.3 plsql:动态sql采用dbms_sql,除非这个sql只是执行一次,那么就使用e
临时表空间的使用问题
如果我们使用的临时表空间是temoprary的,就会在v$sort_segment中显示,如果临时表空是permanent的话,就不会在这个表中进行显示了. 代码:SQL> select tablespace_name,extent_size,total_extents,total_blocks fromv$sort_segment;TABLESPACE_NAME EXTENT_SIZE TOTAL_EXTENTS TOTAL_BLOCKS------------------------------- ----------- ------------- ------------TEMP 128 5999 767872视图v$sort_usage显示oracle在如何使用和分配临时段的. 代码:SQL> select username,session_addr,sqladdr,sqlhash,segtype,2 segfile#,segblk#,exte
Struts-config.xml配置文件讲解
Struts-config.xml配置文件讲解Struts的核心是struts-config.xml配置文件,在这个文件里描述了所有的Struts组件。 在这里包括配置主要的组件及次要的组件,下面是struts-config.xml包含主要元素的内容: 一、 struts-config.xml的主要元素: <?xml version=”1.0” encoding=”ISO-8859-1”?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"><
散列连接,索引,嵌套循环
1 深入理解嵌套循环执行计划 为什么要引入散列连接呢?假设两张表t1(c1 int,c2 int),t2(d1 int,d2 int),查询语句为select c1,d1 from t1 inner join t2 on c1=d1。如果数据库没有实现散列连接、合并连接的话,只能选择使用嵌套循环。从上篇文章中我们可以得到,对于t1的每一条记录,都需要遍历t2的每一条记录。因此,当t1的记录数数为m,t2的记录数为n,那么该查询语句访问的记录次数为m*n。当m=10000、n=10000时,那么m*n=100000000(1亿)。这是比较夸张的浪费时间。如果m是100万,n是100万,那么m*n就是1万亿次,读一万亿次记录,这是不