相当于连续(内接连)、非等连接、自连接、外接连(左、右、全)等连接(内连续)、非等连续、自连接、外接连(左、右、全)Solution2. SQLPLUS中之SET TRACE 即可看到Execution Plan Statistics 

2014-08-16
Created By BaoXinjian

2014-08-16
Created By BaoXinjian

  1. 列举集中表的连年方式

图片 1一、SQL
Tunning类

图片 2一、SQL
Tunning类

Answer:等连接(内连接)、非等连续、自连接、外接连(左、右、全)



Or hash join/merge join/nest loop(cluster join)/index join

图片 31.
点数集中表的连天方式

图片 41.
列举集中表的连日方式

连接类型

定义

例子

内连接

只连接匹配的行

select A.c1,B.c2 from A join B on A.c3 = B.c3;

左外连接

包含左边表的全部行(不管右边的表中是否存在与它们匹配的行)以及右边表中全部匹配的行

select A.c1,B.c2 from A left join B on A.c3 = B.c3;

右外连接

包含右边表的全部行(不管左边的表中是否存在与它们匹配的行)以及左边表中全部匹配的行

select A.c1,B.c2 from A right join B on A.c3 = B.c3;

全外连接

包含左、右两个表的全部行,不管在另一边的表中是否存在与它们匹配的行

select A.c1,B.c2 from A full join B on A.c3 = B.c3;

(theta)连接

使用等值以外的条件来匹配左、右两个表中的行

select A.c1,B.c2 from A join B on A.c3 != B.c3;

交叉连接

生成笛卡尔积——它不使用任何匹配或者选取条件,而是直接将一个数据源中的每个行与另一个数据源的每个行一一匹配

select A.c1,B.c2 from A,B;

Answer:等连接(内连)、非等连续、自连接、外接连(左、右、全)

Answer:等连接(内连)、非等连续、自连接、外接连(左、右、全)

 

Or
hash join/merge join/nest loop(cluster join)/index join

Or
hash join/merge join/nest loop(cluster join)/index join

2.
休借助第三着工具,怎么样查看sql的执行计划

连接类型

定义

例子

内连接

只连接匹配的行

select A.c1,B.c2 from A join B on A.c3 = B.c3;

左外连接

包含左边表的全部行(不管右边的表中是否存在与它们匹配的行)以及右边表中全部匹配的行

select A.c1,B.c2 from A left join B on A.c3 = B.c3;

右外连接

包含右边表的全部行(不管左边的表中是否存在与它们匹配的行)以及左边表中全部匹配的行

select A.c1,B.c2 from A right join B on A.c3 = B.c3;

全外连接

包含左、右两个表的全部行,不管在另一边的表中是否存在与它们匹配的行

select A.c1,B.c2 from A full join B on A.c3 = B.c3;

(theta)连接

使用等值以外的条件来匹配左、右两个表中的行

select A.c1,B.c2 from A join B on A.c3 != B.c3;

交叉连接

生成笛卡尔积——它不使用任何匹配或者选取条件,而是直接将一个数据源中的每个行与另一个数据源的每个行一一匹配

select A.c1,B.c2 from A,B;

连接类型

定义

例子

内连接

只连接匹配的行

select A.c1,B.c2 from A join B on A.c3 = B.c3;

左外连接

包含左边表的全部行(不管右边的表中是否存在与它们匹配的行)以及右边表中全部匹配的行

select A.c1,B.c2 from A left join B on A.c3 = B.c3;

右外连接

包含右边表的全部行(不管左边的表中是否存在与它们匹配的行)以及左边表中全部匹配的行

select A.c1,B.c2 from A right join B on A.c3 = B.c3;

全外连接

包含左、右两个表的全部行,不管在另一边的表中是否存在与它们匹配的行

select A.c1,B.c2 from A full join B on A.c3 = B.c3;

(theta)连接

使用等值以外的条件来匹配左、右两个表中的行

select A.c1,B.c2 from A join B on A.c3 != B.c3;

交叉连接

生成笛卡尔积——它不使用任何匹配或者选取条件,而是直接将一个数据源中的每个行与另一个数据源的每个行一一匹配

select A.c1,B.c2 from A,B;

Solution1. 使用Explain Plan,查询PLAN_TABLE;

 

 

图片 5

图片 62.
不依靠第三正在工具,怎么样查看sql的实施计划

图片 72.
无因第三方工具,怎么样查看sql的尽计划

  EXPLAIN  PLAN
     SET STATEMENT_ID='QUERY1'
     FOR
     SELECT *
     FROM a
     WHERE aa=1;

  SELECT   operation, options, object_name, object_type, ID, parent_id
      FROM plan_table
3     WHERE STATEMENT_ID = 'QUERY1'
  ORDER BY ID;

Solution1.
使用Explain Plan,查询PLAN_TABLE;

Solution1.
使用Explain Plan,查询PLAN_TABLE;

图片 8

  EXPLAIN  PLAN
     SET STATEMENT_ID='QUERY1'
     FOR
     SELECT *
     FROM a
     WHERE aa=1;

  SELECT   operation, options, object_name, object_type, ID, parent_id
      FROM plan_table
3     WHERE STATEMENT_ID = 'QUERY1'
  ORDER BY ID;
  EXPLAIN  PLAN
     SET STATEMENT_ID='QUERY1'
     FOR
     SELECT *
     FROM a
     WHERE aa=1;

  SELECT   operation, options, object_name, object_type, ID, parent_id
      FROM plan_table
3     WHERE STATEMENT_ID = 'QUERY1'
  ORDER BY ID;

Solution2. SQLPLUS中之SET TRACE 即可看到Execution Plan Statistics 

Solution2.
SQLPLUS中的SET TRACE 即可看出Execution Plan Statistics 

Solution2.
SQLPLUS中的SET TRACE 即可看到Execution Plan Statistics 

SET AUTOTRACE ON;
SET AUTOTRACE ON;
SET AUTOTRACE ON;

 

 

 

3. 什么使CBO,CBO以及RULE的别

(1). 结构 

  IF 初始化参数 OPTIMIZER_MODE = CHOOSE THEN  –(8I DEFAULT)

     IF 做过表分析

        THEN 优化器 Optimizer=CBO(COST);         

     ELSE

        优化器 Optimizer=RBO(RULE);               

     END IF;

  END IF;

(2). 区别:

  •   RBO根据规则选择最佳实践路径来运作查询。
  •   CBO根据表统计找到最低资本的访问数的计确定实施计划。

(3). 使用CBO需要小心:

  • 待时对表进行ANALYZE命令进行分析统计;
  • 亟需安静履计划;
  • 亟待以提示(Hint);

(4). 使用RULE需要专注:

  • 慎选最有效率的表名顺序
  • 优化SQL的写法;

(5). 总结

在optimizer_mode=choose时,如果表出统计信息(分区表外),优化器将甄选CBO,否则选RBO。 

RBO遵循简单的分级方法学,使用15种级别要点,当接受及查询,优化器将评估使用及之要领数目,然后选取最佳级别(最少的数码)的行路径来运作查询。 

CBO尝试找到最低资本的顾数的点子,为了最充分的吞吐量或最抢之初步响应时间,计算以不同的实践计划之血本,并选择资金最低的一个,关于表的多少内容之统计于用来确定实施计划。

 

4.
怎么定位要(消耗资源多)的SQL

Step1. 采取CPU多之用户session定位

SELECT a.SID, spid, status, SUBSTR (a.program, 1, 40) prog, a.terminal,a.SQL_TEXT, osuser, VALUE / 60 / 100 VALUE
  FROM v$session a, v$process b, v$sesstat c
 WHERE c.statistic# = 12 AND c.SID = a.SID AND a.paddr = b.addr
 ORDER BY VALUE DESC;

Step2. 查找

select sql_text from v$sql 
where disk_reads > 1000 or (executions > 0 and buffer_gets/executions > 30000);

 

5.
如何跟某个session的SQL

Step1. 利用TRACE 跟踪

  ALTER SESSION SET SQLTRACE ON;

  COLUMN SQL format a200;

  SELECT   machine, sql_text SQL

      FROM v$sqltext a, v$session b

     WHERE address = sql_address

       AND machine = ‘&A’

  ORDER BY hash_value, piece;

 

exec
dbms_system.set_sql_trace_in_session(sid,serial#,&sql_trace); 

 

select sid,serial# from v$session where sid = (select sid from v$mystat
where rownum = 1); 

 

exec
dbms_system.set_ev(&sid,&serial#,&event_10046,&level_12,”);

 

6.
SQL调整最关怀的凡啊

自我批评体系的I/O问题

sar-d能检查全体系的iostat(IO statistics)

 

查看该SQL的response time(db block gets/consistent gets/physical
reads/sorts (disk))

 

图片 93. 怎样采取CBO,CBO和RULE的分

(1).
结构 

 
IF 初始化参数 OPTIMIZER_MODE = CHOOSE THEN  –(8I DEFAULT)

    
IF 做过表分析

       
THEN 优化器 Optimizer=CBO(COST);          /*高效*/

    
ELSE

       
优化器 Optimizer=RBO(RULE);               /*高效*/

    
END IF;

 
END IF;

(2).
区别:

  •  
    RBO根据规则选择最佳实践路径来运转查询。
  •  
    CBO根据表统计找到最低资本的看数的艺术确定实施计划。

(3).
使用CBO需要注意:

  • 用常对表进行ANALYZE命令进行剖析统计;
  • 待安静履计划;
  • 亟需动用提示(Hint);

(4).
使用RULE需要小心:

  • 选最好有效率的表名顺序
  • 优化SQL的写法;

(5).
总结

在optimizer_mode=choose时,如果表来统计信息(分区表外),优化器将挑选CBO,否则选RBO。 

RBO遵循简单的个别方法学,使用15栽级别要点,当接到到查询,优化器将评估使用及之要义数目,然后择最佳级别(最少之数)的实施路径来运行查询。 

CBO尝试找到最低资本的访数的法门,为了最深之吞吐量或顶抢之始发响应时间,计算以不同的执行计划之本钱,并摘资金低的一个,关于表底数码内容之统计于用于确定实施计划。

 

图片 104.
安定位主要(消耗资源多)的SQL

Step1.
用到CPU多之用户session定位

SELECT a.SID, spid, status, SUBSTR (a.program, 1, 40) prog, a.terminal,a.SQL_TEXT, osuser, VALUE / 60 / 100 VALUE
  FROM v$session a, v$process b, v$sesstat c
 WHERE c.statistic# = 12 AND c.SID = a.SID AND a.paddr = b.addr
 ORDER BY VALUE DESC;

Step2.
查找

select sql_text from v$sql 
where disk_reads > 1000 or (executions > 0 and buffer_gets/executions > 30000);

 

图片 115.
怎样跟某个session的SQL

Step1.
利用TRACE 跟踪

 
ALTER SESSION SET SQLTRACE ON;

 
COLUMN SQL format a200;

 
SELECT   machine, sql_text SQL

     
FROM v$sqltext a, v$session b

    
WHERE address = sql_address

      
AND machine = ‘&A’

 
ORDER BY hash_value, piece;

 

exec
dbms_system.set_sql_trace_in_session(sid,serial#,&sql_trace); 

 

select
sid,serial# from v$session where sid = (select sid from v$mystat where
rownum = 1); 

 

exec
dbms_system.set_ev(&sid,&serial#,&event_10046,&level_12,”);

 

图片 126. SQL调整最关切的凡呀

检查体系的I/O问题

sar-d能检查全体系的iostat(IO
statistics)

 

查看该SQL的response
time(db block gets/consistent gets/physical reads/sorts (disk))

 

图片 133. 争使用CBO,CBO同RULE的区别

(1).
结构 

 
IF 初始化参数 OPTIMIZER_MODE = CHOOSE THEN  –(8I DEFAULT)

    
IF 做过表分析

       
THEN 优化器 Optimizer=CBO(COST);          /*高效*/

    
ELSE

       
优化器 Optimizer=RBO(RULE);               /*高效*/

    
END IF;

 
END IF;

(2).
区别:

  •  
    RBO根据规则选择最佳实践路径来运行查询。
  •  
    CBO根据表统计找到最低资本的走访数的不二法门确定实施计划。

(3).
使用CBO需要专注:

  • 消经常对表进行ANALYZE命令进行分析统计;
  • 用安静履计划;
  • 得采用提示(Hint);

(4).
使用RULE需要注意:

  • 挑选最有效率的表名顺序
  • 优化SQL的写法;

(5).
总结

在optimizer_mode=choose时,如果表出统计信息(分区表外),优化器将选取CBO,否则选RBO。 

RBO遵循简单的各自方法学,使用15种植级别要点,当接受至查询,优化器将评估使用及之中心思想数目,然后选择最佳级别(最少之数据)的推行路径来运作查询。 

CBO尝试找到最低资本的造访数的章程,为了最要命的吞吐量或极抢之开头响应时间,计算以不同的行计划之本金,并选资金低于的一个,关于表底数内容之统计于用于确定实施计划。

 

图片 144.
什么定位要(消耗资源多)的SQL

Step1.
使用CPU多之用户session定位

SELECT a.SID, spid, status, SUBSTR (a.program, 1, 40) prog, a.terminal,a.SQL_TEXT, osuser, VALUE / 60 / 100 VALUE
  FROM v$session a, v$process b, v$sesstat c
 WHERE c.statistic# = 12 AND c.SID = a.SID AND a.paddr = b.addr
 ORDER BY VALUE DESC;

Step2.
查找

select sql_text from v$sql 
where disk_reads > 1000 or (executions > 0 and buffer_gets/executions > 30000);

 

图片 155.
争跟某个session的SQL

Step1.
利用TRACE 跟踪

 
ALTER SESSION SET SQLTRACE ON;

 
COLUMN SQL format a200;

 
SELECT   machine, sql_text SQL

     
FROM v$sqltext a, v$session b

    
WHERE address = sql_address

      
AND machine = ‘&A’

 
ORDER BY hash_value, piece;

 

exec
dbms_system.set_sql_trace_in_session(sid,serial#,&sql_trace); 

 

select
sid,serial# from v$session where sid = (select sid from v$mystat where
rownum = 1); 

 

exec
dbms_system.set_ev(&sid,&serial#,&event_10046,&level_12,”);

 

图片 166. SQL调整最关怀的凡什么

反省体系的I/O问题

sar-d能检查全体系的iostat(IO
statistics)

 

查看该SQL的response
time(db block gets/consistent gets/physical reads/sorts (disk))

 

7. 说说若对索引的认识(索引的组织、对dml影响、对查询影响、为什么提高查询性能)

目有B-TREE、BIT、CLUSTER等类别。ORACLE使用了一个犬牙交错的自平衡B-tree结构;通常来说,在表上建立适用的目录,查询时会改善询问性能。但于进展扦插、删除、修改时,同时会展开索引的改,在性及发一定之影响。有索引且查询条件能下索引时,数据库会先度取索引,根据目录内容与查询条件,查询出ROWID,再根据ROWID取出要之数。由于索引内容一般较全表内容而掉杀多,因此通过事先念索引,能压缩I/O,提高查询性能。

 

b-tree index/bitmap index/function index/patitional
index(local/global)索引通常会加强select/update/delete的习性,会下滑insert的速度,

 

图片 177. 说说而针对索引的认识(索引的布局、对dml影响、对查询影响、为什么提高查询性能)

目录有B-TREE、BIT、CLUSTER等色。ORACLE使用了一个繁杂的自平衡B-tree结构;通常来说,在表上建立合适的目,查询时会见改进询问性能。但每当进行插队、删除、修改时,同时会进行索引的修改,在性能上产生自然的震慑。有索引且查询条件会动用索引时,数据库会先度取索引,根据目录内容和查询条件,查询出ROWID,再依据ROWID取出要的多寡。由于索引内容通常比较全表内容一经少杀多,因此通过先行念索引,能减少I/O,提高查询性能。

 

b-tree
index/bitmap index/function index/patitional
index(local/global)索引通常会增长select/update/delete的性质,会跌insert的进度,

 

图片 187. 说说你对索引的认(索引的结构、对dml影响、对查询影响、为什么提高查询性能)


引有B-TREE、BIT、CLUSTER等类型。ORACLE使用了一个复杂的自平衡B-tree结构;通常来说,在表上建立适宜的目录,查询时会改进
查询性能。但以展开插队、删除、修改时,同时会进展索引的改,在性达到生必然的影响。有索引且查询条件能使用索引时,数据库会先度取索引,根据目录内容
和询问条件,查询出ROWID,再因ROWID取出要的数目。由于索引内容通常较全表内容如果丢那个多,因此通过事先念索引,能抽I/O,提高查询性能。

 

b-tree
index/bitmap index/function index/patitional
index(local/global)索引通常能够增进select/update/delete的性能,会稳中有降insert的快,

 

8. 使用索引查询一定能加强查询的习性为?为什么

一般而言,通过索引查询数据比较全表扫描要快.但是咱为须小心到它们的代价.

目录需要空间来储存,也急需定期维护,
每当发生记录在说明中增减或探寻引列被涂改时,索引本身也会见被修改.
这代表各国条记下之INSERT,DELETE,UPDATE将为者多付出4,5 不好的磁盘I/O.
因为索引需要分外的囤积空间和处理,那些无必要之目反而会使查询反应时间变慢.使用索引查询不必然能增进查询性能,索引范围查询(INDEX
RANGE SCAN)适用于个别栽情形:

依据一个限之探寻,一般查询返回结果集小于表中记录数的30%恰当采用;

冲非唯一性索引的摸索

 

目录就是为着增强查询性能而在的,如果以查询中索引没有增长性能,只能算得用擦了目录,或者说是场地不同

 

9.
绑定变量时什么,绑定变量的得失

绑定变量是依在SQL语句被以变量,改变变量的价值来改SQL语句的尽结果。

长:使用绑定变量,可以减去SQL语句的剖析,能抽数据库引擎消耗以SQL语句解析上的资源。提高了编程效率与可靠性。减少访问数据库的次数,
就会实际刨ORACLE的工作量。

缺点:经常索要用动态SQL的写法,由于参数的不比,可能SQL的推行效率不同;

 

绑定变量是对立文本变量来讲的,所谓文本变量是指当SQL直接开查询条件,

如此的SQL在不同尺度下用频繁分析,绑定变量是依赖以变量来代表直接写条件,查询bind
value在运作时传递,然后绑定执行。 

瑜是减少硬解析,降低CPU的争用,节省shared_pool 

缺点是无能够应用histogram,sql优化比较困难

 

图片 198. 动索引查询一定能增高查询的属性为?为什么

一般,通过索引查询数据比全表扫描要快.但是咱吧不能不小心到它们的代价.

目录需要空间来储存,也用定期维护,
每当发生记录在表中增减或探寻引列被涂改时,索引本身为会见吃修改.
这表示各国条记下之INSERT,DELETE,UPDATE将为这个多付出4,5 差的磁盘I/O.
因为索引需要额外的储存空间和处理,那些无必要之目录反而会要查询反应时间变慢.使用索引查询不肯定能增强查询性能,索引范围查询(INDEX
RANGE SCAN)适用于个别种情景:

因一个限量之寻,一般查询返回结果集小于表中记录数的30%适度采用;

根据非唯一性索引的索

 

目录就是以加强查询性能而在的,如果当查询中索引没有提高性,只能算得用擦了目录,或者说是场地不同

 

图片 209.
绑定变量时什么,绑定变量的得失

绑定变量是依靠在SQL语句被行使变量,改变变量的价值来改变SQL语句之履结果。

亮点:使用绑定变量,可以减小SQL语句之解析,能压缩数据库引擎消耗在SQL语句解析上之资源。提高了编程效率及可靠性。减少访问数据库的次数,
就可知实际刨ORACLE的工作量。

缺陷:经常用利用动态SQL的写法,由于参数的两样,可能SQL的行效率不同;

 

绑定变量是对立文本变量来讲的,所谓文本变量是恃以SQL直接开查询条件,

这样的SQL在不同尺度下要数分析,绑定变量是凭以变量来取代直接写条件,查询bind
value在运作时传递,然后绑定执行。 

优点是减掉硬解析,降低CPU的争用,节省shared_pool 

缺点是匪能够采用histogram,sql优化比较紧

 

图片 218. 运用索引查询一定能增长查询的性质为?为什么

便,通过索引查询数据较全表扫描要快.但是我们也要注意到它的代价.

目录需要空间来囤,也需要定期维护,
每当发生记录在表中增减或找引列被修改时,索引本身为会叫修改.
这意味着每条记下的INSERT,DELETE,UPDATE将为之多付出4,5 糟糕的磁盘I/O.
因为索引需要额外的仓储空间与拍卖,那些未必要的目录反而会要查询反应时间变慢.使用索引查询不肯定能够提高查询性能,索引范围查询(INDEX
RANGE SCAN)适用于片种状态:

根据一个限制的寻找,一般查询返回结果集小于表中记录数的30%相宜用;

因非唯一性索引的搜寻

 

目就是为加强查询性能而有的,如果当询问中索引没有提高性,只能算得用擦了目录,或者称是场地不同

 

图片 229.
绑定变量时什么,绑定变量的优缺点

绑定变量是凭借于SQL语句被采用变量,改变变量的值来改变SQL语句之实施结果。

可取:使用绑定变量,可以减掉SQL语句之解析,能减少数据库引擎消耗在SQL语句解析及之资源。提高了编程效率及可靠性。减少访问数据库的次数,
就可知实际减少ORACLE的工作量。

缺陷:经常要以动态SQL的写法,由于参数的例外,可能SQL的尽效率不同;

 

绑定变量是相对文本变量来讲的,所谓文本变量是因以SQL直接写查询条件,

这般的SQL在不同口径下需要数分析,绑定变量是据使用变量来代替直接开条件,查询bind
value在运行时传递,然后绑定执行。 

亮点是减硬解析,降低CPU的争用,节省shared_pool 

缺陷是免可知用histogram,sql优化比较艰苦

 

10. 哪些平稳(固定)执行计划

足于SQL语句被指定执行计划。使用HINTS;

query_rewrite_enabled = true

star_transformation_enabled = true

optimizer_features_enable = 9.2.0

创建并使用stored outline

 

图片 2310. 如何稳定(固定)执行计划

足于SQL语句被指定执行计划。使用HINTS;

query_rewrite_enabled
= true

star_transformation_enabled
= true

optimizer_features_enable
= 9.2.0

始建并运用stored
outline

 

图片 2410. 怎样稳定(固定)执行计划

足当SQL语句被指定执行计划。使用HINTS;

query_rewrite_enabled
= true

star_transformation_enabled
= true

optimizer_features_enable
= 9.2.0

创造并下stored
outline

 

11. 同排序相关的内是8i和9i分别怎样调整,临时表空间的企图是什么

SORT_AREA_SIZE
在进展排序操作时,如果排序的情极其多,内存里无能够一切下垂,则需要开展表面排序,

这亟需以临时表空间来存放排序的中结果。

 

8i中sort_area_size/sort_area_retained_size决定了排序所欲之内存,
如果排序操作不能够当sort_area_size中好,就会就此到temp表空间

9i中如果workarea_size_policy=auto时, 

排序在pga内进行,通常pga_aggregate_target的1/20好据此来展开disk
sort; 

如果workarea_size_policy=manual时,排序需要的内存由sort_area_size决定,
在实行order by/group by/distinct/union/create index/index
rebuild/minus等操作时,如果以pga或sort_area_size中莫克到位,排序将在临时表空间进行(disk
sort),临时表空间要作用就是到位系统面临的disk sort.

 

图片 2511. 以及排序相关的内存在8i和9i分别怎样调整,临时表空间的图是呀

SORT_AREA_SIZE
在开展排序操作时,如果排序的内容最多,内存里无可知通放下,则要进行表面排序,

这时需要使用临时表空间来存放排序的中级结果。

 

8i中sort_area_size/sort_area_retained_size决定了排序所待的内存,
如果排序操作不可知以sort_area_size中成就,就会见用到temp表空间

9i中如果workarea_size_policy=auto时, 

排序在pga内进行,通常pga_aggregate_target的1/20足为此来拓展disk
sort; 

如果workarea_size_policy=manual时,排序需要的内存由sort_area_size决定,
在履行order by/group by/distinct/union/create index/index
rebuild/minus等操作时,如果当pga或sort_area_size中无能够做到,排序将于临时表空间进行(disk
sort),临时表空间要意图就是做到系统遭到之disk sort.

 

图片 2611. 暨排序相关的外是8i和9i分别怎样调,临时表空间的意图是什么

SORT_AREA_SIZE
在展开排序操作时,如果排序的情尽多,内存里不克一体拖,则用开展表面排序,

此刻用利用临时表空间来存放在排序的高中级结果。

 

8i中sort_area_size/sort_area_retained_size决定了排序所需要的内存,
如果排序操作不克于sort_area_size中成功,就会为此到temp表空间

9i中如果workarea_size_policy=auto时, 

排序在pga内进行,通常pga_aggregate_target的1/20可以用来拓展disk
sort; 

如果workarea_size_policy=manual时,排序需要之内存由sort_area_size决定,
在执行order by/group by/distinct/union/create index/index
rebuild/minus等操作时,如果以pga或sort_area_size中未克不辱使命,排序将以临时表空间拓展(disk
sort),临时表空间要意图就是是完成系统受之disk sort.

 

12. 在表T(a,b,c,d),要因字段c排序后收获第21—30长长的记下显示,请给有sql

Solution1.     

图片 27

SELECT   *
        FROM (SELECT ROWNUM AS row_num, tmp_tab.*
                FROM (SELECT   a, b, c, d
                          FROM T
                      ORDER BY c) tmp_tab
               WHERE ROWNUM <= 30)
       WHERE row_num >= 20
ORDER BY row_num;

图片 28

Solution2. 

图片 29

create table t(a number(,b number(,c number(,d number();
/ 

begin 
  for i in 1 .. 300 loop 
    insert into t values(mod(i,2),i/2,dbms_random.value(1,300),i/4); 
  end loop;
end; 
/

图片 30

Solution3.

图片 31

select * from (select c.*,rownum as rn from (select * from t order by c desc) c) where rn between 21 and 30;
/

select * from (select * from test order by c desc) x where rownum &lt; 30
minus
select * from (select * from test order by c desc) y where rownum &lt; 20 order by 3 desc 

相比之 minus性能较差

图片 32

 

图片 3312. 设有表T(a,b,c,d),要根据字段c排序后取得第21—30修记下显示,请吃闹sql

Solution1. 
  

SELECT   *
        FROM (SELECT ROWNUM AS row_num, tmp_tab.*
                FROM (SELECT   a, b, c, d
                          FROM T
                      ORDER BY c) tmp_tab
               WHERE ROWNUM <= 30)
       WHERE row_num >= 20
ORDER BY row_num;

Solution2. 

create table t(a number(,b number(,c number(,d number();
/ 

begin 
  for i in 1 .. 300 loop 
    insert into t values(mod(i,2),i/2,dbms_random.value(1,300),i/4); 
  end loop;
end; 
/

Solution3.

select * from (select c.*,rownum as rn from (select * from t order by c desc) c) where rn between 21 and 30;
/

select * from (select * from test order by c desc) x where rownum &lt; 30
minus
select * from (select * from test order by c desc) y where rownum &lt; 20 order by 3 desc 

相比之 minus性能较差

 

图片 3412. 是表T(a,b,c,d),要根据字段c排序后收获第21—30长长的记下显示,请让闹sql

Solution1. 
  

SELECT   *
        FROM (SELECT ROWNUM AS row_num, tmp_tab.*
                FROM (SELECT   a, b, c, d
                          FROM T
                      ORDER BY c) tmp_tab
               WHERE ROWNUM <= 30)
       WHERE row_num >= 20
ORDER BY row_num;

Solution2. 

create table t(a number(,b number(,c number(,d number();
/ 

begin 
  for i in 1 .. 300 loop 
    insert into t values(mod(i,2),i/2,dbms_random.value(1,300),i/4); 
  end loop;
end; 
/

Solution3.

select * from (select c.*,rownum as rn from (select * from t order by c desc) c) where rn between 21 and 30;
/

select * from (select * from test order by c desc) x where rownum &lt; 30
minus
select * from (select * from test order by c desc) y where rownum &lt; 20 order by 3 desc 

相比之 minus性能较差

 

仲:数据库基本概念类


图片 35亚:数据库基本概念类


图片 36其次:数据库基本概念类


1. Pctused and pctfree 表示什么含义有什么打算

pctused与pctfree控制数据块是否出现于freelist中,
 pctfree控制数据块被保存用于update的空中,当数码块被之free
space小于pctfree设置的空间时,该数额块从freelist中失丢,当块由于dml操作free
space大于pct_used设置的空中时,该数据库块用被填补加于freelist链表中。

 

图片 371. Pctused and pctfree 表示什么意思有啊作用

pctused与pctfree控制数据块是否出现在freelist中,
 pctfree控制数据块被保留用于update的长空,当数块被之free
space小于pctfree设置的半空中时,该多少块从freelist中错过丢,当块由于dml操作free
space大于pct_used设置的长空时,该数据库块用受补充加在freelist链表中。

 

图片 381. Pctused and pctfree 表示什么含义有什么打算

pctused
与pctfree控制数据块是否出现于freelist中,
 pctfree控制数据块被保存用于update的空间,当数码块被的free
space小于pctfree设置的长空时,该数据块从freelist中失去丢,当块由于dml操作free
space大于pct_used设置的空间时,该数据库块用给上加于freelist链表中。

 

2. 简描述tablespace / segment / extent / block之间的涉

(1). tablespace:
一个数据库划分为一个还是多单逻辑单位,该逻辑单位变成表空间;每一个说明空间或含有一个或者多个
Segment;

(2). Segments:
Segment指当tablespace中为一定逻辑存储结构分配的半空中。每一个截是出于一个或多只extent组成。包括数据段、索引段、回滚段及临时段。

(3). Extents: 一个 extent 由同多重连续的 Oracle
blocks组成.ORACLE为通过extent 来让segment分配空间。

(4). Data Blocks:Oracle 数据库最小的I/O存储单位,一个data
block对应一个要多独分配为data file的操作系统块。

(5). table创建时,默认创建了一个data segment,每个data segment含有min
extents指定的extents数,每个extent据据表空间的囤参数分配一定数量的blocks

 

图片 392. 简约描述tablespace / segment / extent / block之间的关系

(1).
tablespace:
一个数据库划分为一个或者多只逻辑单位,该逻辑单位成为表空间;每一个发明空间或含有一个要么多单
Segment;

(2). Segments:
Segment指当tablespace中也一定逻辑存储结构分配的长空。每一个截是由一个要多只extent组成。包括数据段、索引段、回滚段以及临时段。

(3). Extents: 一个 extent 由同样系列连续的
Oracle blocks组成.ORACLE为通过extent 来受segment分配空间。

(4). Data Blocks:Oracle
数据库最小之I/O存储单位,一个data block对应一个要么多独分配给data
file的操作系统块。

(5). table创建时,默认创建了一个data
segment,每个data segment含有min
extents指定的extents数,每个extent据据表空间的储存参数分配一定数量之blocks

 

图片 402. 粗略描述tablespace / segment / extent / block之间的涉及

(1).
tablespace:
一个数据库划分也一个要多只逻辑单位,该逻辑单位成为表空间;每一个表空间或含有一个还是多单
Segment;

(2). Segments:
Segment指以tablespace中也一定逻辑存储结构分配的空间。每一个段是出于一个还是多独extent组成。包括数据段、索引段、回滚段以及临时段。

(3). Extents: 一个 extent 由同样雨后春笋连续的 Oracle
blocks组成.ORACLE为通过extent 来让segment分配空间。

(4). Data Blocks:Oracle
数据库最小之I/O存储单位,一个data block对应一个或多个分配为data
file的操作系统块。

(5). table创建时,默认创建了一个data
segment,每个data segment含有min
extents指定的extents数,每个extent据据表空间的囤积参数分配一定数额之blocks

 

3. 描述tablespace和datafile之间的涉嫌

一个发明空间不过含蓄一个要么多独数据文件。表空间应用增加或者扩展数据文件扩大表空间,表空间的高低为做该表空间的数据文件大小的和。一个datafile只能属于一个阐明空间;

一个tablespace可以生出一个或多独datafile,每个datafile只能以一个tablespace内, table中之数额,通过hash算法分布在tablespace中之一一datafile中,tablespace是逻辑上的定义,datafile则当大体及囤积了数据库的种种对象。

 

图片 413. 叙述tablespace和datafile之间的涉嫌

一个发明空间不过含蓄一个或多单数据文件。表空间利用增加或者扩大数据文件扩大表空间,表空间的大大小小也做该表空间的数据文件大小的和。一个datafile只能属于一个发明空间;

一个tablespace可以有一个要多单datafile,每个datafile只能于一个tablespace内, table中的多寡,通过hash算法分布于tablespace中之逐条datafile中,tablespace是逻辑上的定义,datafile则于情理及囤积了数据库的类对象。

 

图片 423. 描述tablespace和datafile之间的涉嫌

一个说明空间不过含蓄一个要多个数据文件。表空间利用增加或扩大数据文件扩大表空间,表空间的尺寸也做该表空间的数据文件大小的和。一个datafile只能属于一个发明空间;


独tablespace可以出一个要么多个datafile,每个datafile只能在一个tablespace内, table中的数量,通过hash
算法分布于tablespace中之顺序datafile中,tablespace是逻辑上之概念,datafile则以情理及囤积了数据库的种对象。

 

4. 本地管理表空间及字典管理表空间的特性,ASSM有啊特色

当地管理表空间:(9i默认)空闲块列表存储于表空间的数据文件头。

特色:减少多少字典表的竞争,当分配和收缩空间时会见生回滚,不欲统一。

字典管理表空间:(8i默认)空闲块列表存储在数据库被的字典表里.

特性:片由数字典管理,可能导致字典表的争用。存储在表空间的每一个段都见面发出两样的存储字词,需要联合相邻之块;

 

地方管理表空间(Locally Managed Tablespace简称LMT)

8i后出现的同种植新的表空间的管理模式,通过各类图来管理表空间的长空利用。字典管理表空间(Dictionary-Managed
Tablespace简称DMT) 

8i先包括后都还得下的同等种表空间管理模式,通过数据字典管理表空间的空中应用。动段空间管理(ASSM),它首次面世于Oracle920里出了ASSM,链接列表freelist被各类图所取代,它是一个二进制的累累组, 

能快速有效地管理存储扩展及剩余区片(free
block),因此会改善分段存储本质,ASSM表空间达到创造的段落还有另外一个称呼叫Bitmap
Managed Segments(BMB 段)。

 

图片 434. 当地管理表空间和字典管理表空间的特性,ASSM有啊特色

地面管理表空间:(9i默认)空闲块列表存储在表空间的数据文件头。

特性:减少数量字典表的竞争,当分配与收缩空间时会见生出回滚,不需要统一。

字典管理表空间:(8i默认)空闲块列表存储在数据库中之字典表里.

特点:片由数字典管理,可能致字典表的争用。存储于表空间的每一个段子还见面发生差的储存字词,需要联合相邻之丘;

 

本地管理表空间(Locally
Managed Tablespace简称LMT)

8i后出现的同种植新的表空间的管理模式,通过各类图来管理表空间的空中利用。字典管理表空间(Dictionary-Managed
Tablespace简称DMT) 

8i先包括后都还可以运用的同等栽表空间管理模式,通过数量字典管理表空间的长空利用。动段空间管理(ASSM),它首赖出现在Oracle920里产生矣ASSM,链接列表freelist被各类图所替代,它是一个二进制的高频组, 

可知高效有效地保管存储扩展以及剩余区片(free
block),因此能够改善分段存储本质,ASSM表空间上缔造的段还有另外一个如呼叫Bitmap
Managed Segments(BMB 段)。

 

图片 444. 本地管理表空间以及字典管理表空间的特色,ASSM有什么特色

当地管理表空间:(9i默认)空闲块列表存储于表空间的数据文件头。

特征:减少数额字典表的竞争,当分配和收缩空间时会发出回滚,不待联合。

字典管理表空间:(8i默认)空闲块列表存储于数据库中的字典表里.

特征:片由数据字典管理,可能引致字典表的争用。存储于表空间的各国一个段落还见面时有发生两样之囤字词,需要统一相邻的丘;

 

地方管理表空间(Locally
Managed Tablespace简称LMT)

8i过后出现的同样种新的表空间的管理模式,通过各项图来管理表空间的长空应用。字典管理表空间(Dictionary-Managed
Tablespace简称DMT) 

8i以前包括以后还还好采取的平等栽表空间管理模式,通过数量字典管理表空间的空中利用。动段空间管理(ASSM),它首不行出现在Oracle920里生矣ASSM,链接列表freelist被各图所代替,它是一个二进制的频繁组, 

能快速有效地保管存储扩展以及剩余区畈(free
block),因此能够改善分段存储本质,ASSM表空间上创设的段子还有另外一个遂呼叫Bitmap
Managed Segments(BMB 段)。

 

5. 回滚段的意向是呀

扭动滚段用于保存数据修改前之画面,这些信用于转移读一致性数据库信息、在数据库恢复与Rollback时利用。一个作业只能用一个回滚段。

 

政工回滚:当事务修改表中数据的下,该数量修改前之价(即眼前影像)会存放于回滚段被,当用户回滚事务(ROLLBACK)时,ORACLE将见面采用回滚段遭遇之多少前影像来用改的数据恢复到原来的价值。 

事务恢复:当事务正在处理的下,例程失败,回滚段的音保存于undo表空间中,ORACLE将在下次开拓数据库时以回滚来还原未提交的多寡。

朗诵一致性:当一个对话正在改数据时,其他的对话将看不到该会话未提交的改动。 当一个话语正在实施时,该语句以看不到从该语句开始实践后的不提交的改(语句级读一致性) 

当ORACLE执行SELECT语句时,ORACLE依照当前之系统改变号(SYSTEM CHANGE
NUMBER-SCN) 来保证其他前给即SCN的非提交的变更不深受该语句处理。可以想像:当一个长日子之询问在推行时, 若其他会话改变了该查询而询问的之一数据块,ORACLE将祭回滚段的数额前影像来布局一个读一致性视图

 

图片 455. 转头滚段的意图是什么

回滚段用于保存数据修改前的镜头,这些信息用于转移读一致性数据库信息、在数据库恢复跟Rollback时采用。一个事务只能以一个回滚段。

 

工作回滚:当事务修改表中数的上,该多少修改前的值(即眼前影像)会存放于回滚段遭遇,当用户回滚事务(ROLLBACK)时,ORACLE将会见采用回滚段受到的多寡前影像来将改的数据恢复到本的值。 

事情恢复:当事务正在处理的上,例程失败,回滚段的音信保存于undo表空间被,ORACLE将于下次开拓数据库时以回滚来还原未提交的数据。

朗诵一致性:当一个会话正在改数据常常,其他的对话将看不到该会话不提交的修改。 当一个讲话正在尽时,该语句以看不到从该语句开始实行后底不提交的修改(语句级读一致性) 

当ORACLE执行SELECT语句时,ORACLE依照当前的体系改变号(SYSTEM
CHANGE
NUMBER-SCN) 来保证其他前受时SCN的非提交的改不被该语句处理。可以想象:当一个抬高日子的查询正在执行时, 若其他会话改变了该查询而查询的某数据块,ORACLE将以回滚段的多寡前影像来组织一个朗诵一致性视图

 

图片 465. 转滚段的意向是呀

扭曲滚段用于保存数据修改前的镜头,这些信用于转移读一致性数据库信息、在数据库恢复与Rollback时采用。一个政工只能采取一个回滚段。

 

业务回滚:当事务修改表中数据的上,该数据修改前的价(即眼前影像)会存放于回滚段受到,当用户回滚事务(ROLLBACK)时,ORACLE将会晤利用回滚段被的数量前影像来用改的数据恢复到原来的价。 

工作恢复:当事务正在处理的上,例程失败,回滚段的消息保存在undo表空间受到,ORACLE将以下次打开数据库时采取回滚来恢复未提交的数。

念一致性:当一个会话正在修改数据经常,其他的对话将看不到该会话不提交的改动。 当一个讲话正在行时,该语句以看不到从该语句开始推行后底非提交的改(语句级读一致性) 


ORACLE执行SELECT语句时,ORACLE依照当前之网改变号(SYSTEM CHANGE
NUMBER-SCN) 来保证其他前被当下SCN的匪提交的变更不让该语句处理。可以想像:当一个添加时之查询正在实施时, 若其他会话改变了拖欠查询而
查询的某某数据块,ORACLE将动用回滚段的数据前影像来组织一个诵读一致性视图

 

6. 日志的来意是什么

日记文件(Log
File)记录有对数据库数据的修改,主要是保安数据库以防止故障,以及恢复数据时采用。其特点如下:

 
a)每一个数据库至少含有两独日志文件组。每个日志文件组至少含有两个日志文件成员。

  b)日志文件组为巡回方式展开摹写操作。

  c)每一个日记文件成员对应一个大体文件。

 

笔录数据库事务,最深限度地保证数据的一致性和安全性  

再开日志文件:含对数据库所召开的转记录,这样要出现故障可以启用数据恢复,一个数据库至少要简单单再次开日志文件 

归档日志文件:是再开日志文件之脱机副本,这些副本或对于自介质失败中进行还原非常必要。

 

图片 476. 日志的图是呀

日志文件(Log
File)记录有对数据库数据的改,主要是保障数据库以戒故障,以及恢复数据经常行使。其特征如下:

 
a)每一个数据库至少含有两独日志文件组。每个日志文件组至少含有两单日志文件成员。

 
b)日志文件组因为循环方式开展勾勒操作。

 
c)每一个日志文件成员对应一个大体文件。

 

记录数据库事务,最酷限度地保证数据的一致性与安全性  

复做日志文件:含对数据库所开的变动记录,这样如果出现故障可以启用数据恢复,一个数据库至少需简单只重复做日志文件 

归档日志文件:是双重开日志文件的脱机副本,这些副本或对自介质失败中展开复原老必要。

 

图片 486. 日记的意向是啊

日记文件(Log
File)记录有对数据库数据的改动,主要是维护数据库以备故障,以及恢复数据经常用。其性状如下:

 
a)每一个数据库至少含有两单日志文件组。每个日志文件组至少含有两只日志文件成员。

 
b)日志文件组为巡回方式进行摹写操作。

 
c)每一个日记文件成员对应一个大体文件。

 

笔录数据库事务,最特别限度地保证数据的一致性和安全性  

双重开日志文件:含对数据库所做的改观记录,这样只要出现故障可以启用数据恢复,一个数据库至少需要简单独再开日志文件 

归档日志文件:是重复开日志文件之脱机副本,这些副本或于自介质失败中开展回复好必要。

 

7. SGA主要出那些有,主要作用是什么

网全局区(SGA):是ORACLE为实例分配的一模一样组并享缓冲存储区,用于存放数据库数据及操纵信息,以促成对数据库数据的军事管制和操作。

SGA主要概括:

  • a)共享池(shared pool)
    :用来存储最近执行之SQL语句和最近动的多少字典的多少。
  • b)数据缓冲区 (database buffer
    cache):用来存储最近自数据文件中读写过之数。
  • c)重作日志缓冲区(redo log
    buffer):用来记录服务要后台进程对数据库的操作。
  • 除此以外当SGA中还有少独可卜的内存结构:
  • d)Java pool:  用来存储Java代码。
  • e)Large pool:
    用来囤积不与SQL直接有关的特大型内存结构。备份、恢复使用。

 

GA:db_cache/shared_pool/large_pool/java_pool 

  • db_cache: 数据库缓存(Block
    Buffer)对于Oracle数据库的运转和性于在好主要之企图,它占据Oracle数据库SGA(系统共享内存区)的机要有。Oracle数据库通过下LRU算法,将多年来做客的数额块存放到缓存中,从而优化对磁盘数据的访问.
  • shared_pool: 共享池的分寸对Oracle
    性能来说都是大关键的。共享池中保存数据字典高速缓冲和完全解析或编译的之PL/SQL
    块和SQL 语句及控制结构 
  • large_pool:
    使用MTS配置时,因为要是以SGA中分红UGA来保持用户之对话,就是之所以Large_pool来维系此会话内存以RMAN做备份的当儿,要使用Large_pool这个内存结构来开磁盘I/O缓存器 
  • java_pool: 为java procedure预备的内存区域,如果没用java
    proc,java_pool不是必的

 

图片 497. SGA主要发生那些部分,主要作用是啊

系统全局区(SGA):是ORACLE为实例分配的如出一辙组共享缓冲存储区,用于存放数据库数据和决定信息,以实现对数据库数据的管理暨操作。

SGA主要不外乎:

  • a)共享池(shared
    pool) :用来囤最近实施之SQL语句和近年来使用的多寡字典的数据。
  • b)数据缓冲区
    (database buffer
    cache):用来囤最近打数据文件中读写过的数码。
  • c)重作日志缓冲区(redo
    log buffer):用来记录服务或后台进程对数据库的操作。
  • 此外当SGA中还有一定量单可选的内存结构:
  • d)Java
    pool:  用来存储Java代码。
  • e)Large
    pool: 用来储存不与SQL直接有关的巨型内存结构。备份、恢复使用。

 

GA:db_cache/shared_pool/large_pool/java_pool 

  • db_cache:
    数据库缓存(Block
    Buffer)对于Oracle数据库的运作和属性于在死关键之作用,它占据Oracle数据库SGA(系统共享内存区)的重大组成部分。Oracle数据库通过应用LRU算法,将新近访的多寡块存放到缓存中,从而优化对磁盘数据的访问.
  • shared_pool:
    共享池的轻重对Oracle
    性能来说都是非常重大的。共享池中保留数据字典高速缓冲和全解析或编译的底PL/SQL
    块和SQL 语句及控制结构 
  • large_pool:
    使用MTS配置时,因为如果当SGA中分配UGA来保障用户之对话,就是用Large_pool来维持这会话内存以RMAN做备份的时刻,要采取Large_pool这个内存结构来举行磁盘I/O缓存器 
  • java_pool:
    为java procedure预备的内存区域,如果无应用java
    proc,java_pool不是要的

 

图片 507. SGA主要有那些有,主要作用是呀

系全局区(SGA):是ORACLE为实例分配的同组一起享缓冲存储区,用于存放数据库数据及控制信息,以促成对数据库数据的田间管理与操作。

SGA主要概括:

  • a)共享池(shared
    pool) :用来存储最近行之SQL语句和最近采用的数字典的数。
  • b)数据缓冲区
    (database buffer
    cache):用来存储最近于数据文件中读写了之多少。
  • c)重作日志缓冲区(redo
    log buffer):用来记录服务要后台进程对数据库的操作。
  • 另外当SGA中还有个别独可挑选的内存结构:
  • d)Java
    pool:  用来存储Java代码。
  • e)Large
    pool: 用来囤积不与SQL直接有关的特大型内存结构。备份、恢复使用。

 

GA:db_cache/shared_pool/large_pool/java_pool 

  • db_cache:
    数据库缓存(Block
    Buffer)对于Oracle数据库的运转和性质于在十分主要之图,它占据Oracle数据库SGA(系统共享内存区)的重点部分。Oracle数据
    库通过运用LRU算法,将近期访问的数量块存放到缓存中,从而优化对磁盘数据的访问.
  • shared_pool:
    共享池的大小对Oracle
    性能来说都是老大重要的。共享池中保留数据字典高速缓冲和完全解析或编译的的PL/SQL
    块和SQL 语句及控制结构 
  • large_pool:
    使用MTS配置时,因为一旦在SGA中分红UGA来维持用户之对话,就是之所以Large_pool来保障是会话内存以RMAN做备份的时候,要使Large_pool这个内存结构来开磁盘I/O缓存器 
  • java_pool:
    为java procedure预备的内存区域,如果没用java
    proc,java_pool不是必须的

 

8. Oracle系统进程最主要出哪些,作用是什么

多少形容进程(DBWR):负责将转移的数由数据库缓冲区高速缓存写副数据文件

日记写进程(LGWR):将再次开日志缓冲区中之变更写入在线重开日志文件

系统监控  (SMON):
检查数据库的一致性如发生必要还会见于数据库打开时起步数据库的复原

过程监控  (PMON): 负责在一个Oracle 进程受挫时清理资源

检查点进程(CKPT):负责在当缓冲区高速缓存中的变更永久地记下在数据库中时时,更新控制文件及数据文件中的数据库状态信息。

归档进程  (ARCH):在历次日志切换时将曾经满的日志组进行备份或归档

过来过程  (RECO):
保证分布式事务之一致性,在分布式事务中,要么同时commit,要么同时rollback;

学业调度器(CJQ ): 
负责用调度以及执行系统中已定义好的job,完成有预定义的工作.

 

图片 518. Oracle系统历程要发生安,作用是啊

数形容进程(DBWR):负责用改成的数码由数据库缓冲区高速缓存写副数据文件

日记写进程(LGWR):将更开日志缓冲区中的变更写入在线重做日志文件

系统监控 
(SMON):
检查数据库底一致性如有必要还会见当数据库打开时启动数据库的东山再起

过程监控 
(PMON): 负责在一个Oracle 进程受挫时清理资源

检查点进程(CKPT):负责在以缓冲区高速缓存中之变更永久地记录在数据库被时常,更新控制文件以及数据文件中的数据库状态信息。

归档进程 
(ARCH):在每次日志切换时拿已满之日志组进行备份或归档

平复过程 
(RECO):
保证分布式事务的一致性,在分布式事务中,要么以commit,要么同时rollback;

作业调度器(CJQ
):  负责用调度和实施系统受曾经定义好之job,完成部分预定义的工作.

 

图片 528. Oracle系统进程要发生什么,作用是啊

数量勾勒进程(DBWR):负责用反的数额从数据库缓冲区高速缓存写副数据文件

日志写进程(LGWR):将再做日志缓冲区中的更动写入在线重开日志文件

系统监控 
(SMON):
检查数据库底一致性如发必不可少还会见在数据库打开时起步数据库的过来

进程监控 
(PMON): 负责在一个Oracle 进程受挫时清理资源

检查点进程(CKPT):负责在以缓冲区高速缓存中之更动永久地记下在数据库被经常,更新控制文件与数据文件中之数据库状态信息。

归档进程 
(ARCH):在历次日志切换时拿已经满的日志组进行备份或归档

还原过程 
(RECO):
保证分布式事务之一致性,在分布式事务中,要么以commit,要么以rollback;

学业调度器(CJQ
):  负责将调度以及履行系统面临都定义好的job,完成有预定义的工作.

 

三:备份恢复类


图片 53其三:备份恢复类


图片 54老三:备份恢复类


1. 备份如何分类

(1). 分类

  • 逻辑备份:exp/imp 指定表的逻辑备份
  • 大体备份: 
    • 热备份:alter
      tablespace begin/end backup; 
    • 冷备客:脱机备份(database
      shutdown)
    • RMAN备份 
    • full
      backup/incremental backup(累积/差异) 

(2). 物理备份

物理备份是最要的备份方式。用于保证数据库在极端小之数据库丢失或无数丢失的情事下得恢复。

(3).冷物理

冷物理备份提供了无限简便与极直白的方保护数据库因物理磨损遗失。建议以偏下几栽状态被运用。

对一个早已在大最数据量的数据库,在夜幕数据库可关闭,此时用冷物理备份。

本着要对数据库服务器进行升级,(如更换硬盘),此时亟待备份数据库信息,并在新的硬盘中还原这些数量信息,建议采取冷物理备份。

(4).热物理

重中之重是靠备份过程在数据库打开并且用户可应用的情下进展。需要实施热物理备份的景来:

是因为数据库性质要求无间歇工作,因而此时只好以热物理备份。

由备份的渴求的辰了长,而数据库只能短日关闭时。

(5).逻辑备客 (EXP/IMP)

逻辑备份用于落实数据库对象的过来。但未是冲时间接触可完全恢复的备份策略。只能作为共同备份和脱机备份的同一种植上。

(6).完全逻辑备份

一齐逻辑备份是将满数据库导出到一个数据库的格式文件中,该文件可以于不同之数据库版本、操作系统及硬件平台之间开展移植。

(7).指定表的逻辑备份

经过备份工具,可以用点名的数据库表备份出来,这好避免了逻辑备份所带的日子以及基金达之荒废。

 

图片 551. 备份如何分类

(1).
分类

  • 逻辑备份:exp/imp 指定表的逻辑备份
  • 大体备份: 
    • 热备份:alter
      tablespace begin/end backup; 
    • 冷备卖:脱机备份(database
      shutdown)
    • RMAN备份 
    • full
      backup/incremental backup(累积/差异) 

(2).
物理备份

大体备份是最好要紧的备份方式。用于保证数据库在无比小之数据库丢失或尚未多少丢失的状况下取得恢复。

(3).冷物理

冷物理备份提供了最为简便与极直接的点子保护数据库因物理磨损遗失。建议于偏下几栽情况被使用。

针对一个已有大最数据量的数据库,在晚上数据库可关闭,此时使冷物理备份。

本着用对数据库服务器进行升级,(如更换硬盘),此时内需备份数据库信息,并在新的硬盘中还原这些数据信息,建议使用冷物理备份。

(4).热物理

要是依备份过程在数据库打开并且用户可使的景况下开展。需要实践热物理备份的场面时有发生:

鉴于数据库性质要求不中断工作,因而此时只好以热物理备份。

是因为备份的要求的年月过长,而数据库只能短日关闭时。

(5).逻辑备客 (EXP/IMP)

逻辑备份用于落实数据库对象的恢复。但不是依据时间点可完全恢复的备份策略。只能当联合备份和脱机备份的一样种植补偿。

(6).完全逻辑备份

全然逻辑备份是将合数据库导出到一个数据库的格式文件中,该公文可以于不同的数据库版本、操作系统和硬件平台之间开展移植。

(7).指定表的逻辑备份

透过备份工具,可以拿点名的数据库表备份出来,这可避免了逻辑备份所带动的时刻与财力上之浪费。

 

图片 561. 备份如何分类

(1).
分类

  • 逻辑备份:exp/imp 指定表的逻辑备份
  • 物理备份: 
    • 热备份:alter
      tablespace begin/end backup; 
    • 冷备卖:脱机备份(database
      shutdown)
    • RMAN备份 
    • full
      backup/incremental backup(累积/差异) 

(2).
物理备份

物理备份是无比着重的备份方式。用于保证数据库在最好小的数据库丢失或没有数据丢失的景象下获得恢复。

(3).冷物理

冷物理备份提供了极其简便易行与极其直白的方法保护数据库因物理磨损遗失。建议于偏下几栽状况中以。

对一个就是非常最数据量的数据库,在夜晚数据库可关闭,此时下冷物理备份。

本着得对数据库服务器进行升级,(如更换硬盘),此时要备份数据库信息,并于初的硬盘中回复这些数据信息,建议利用冷物理备份。

(4).热物理

主要是因备份过程在数据库打开并且用户可以动用的情况下展开。需要履行热物理备份的情形发生:

出于数据库性质要求无间歇工作,因而此时不得不采取热物理备份。

鉴于备份的要求的年华了长,而数据库只能短日关闭时。

(5).逻辑备客 (EXP/IMP)

逻辑备份用于落实数据库对象的回复。但无是因时间接触可完全恢复的备份策略。只能当做合办备份和脱机备份的一律种植上。

(6).完全逻辑备份

意逻辑备份是以整个数据库导出到一个数据库的格式文件中,该文件可以当不同之数据库版本、操作系统及硬件平台之间开展移植。

(7).指定表的逻辑备份

通过备份工具,可以将指定的数据库表备份出来,这足以避免了逻辑备份所带动的辰及资产达的荒废。

 

2. 归档是什么含义 

有关归档日志:Oracle要拿填满之在线日志文件组归档时,则使建归档日志(archived
redo log)。其针对性数据库备份和还原来下列用处: 

数据库后备以及在线与归档日志文件,在操作系统及磁盘故障中只是确保百分之百付出的物可让还原。 

当数据库打开和正规体系以下,如果归档日志是世代保存,在线后备可以拓展与采取。 

数据库可运行于个别栽不同方式下:NOARCHIVELOG方式还是ARCHIVELOG 方式 

数据库在NOARCHIVELOG方式下下时,不可知开展在线日志的存档, 

数据库在ARCHIVELOG方式下运作,可实施在线日志的存档

 

归档是归档当前之并redo日志文件。

SVRMGR> alter system archive log current;

数据库只有运行于ARCHIVELOG模式下,并且能进行机动归档,才好开展协同备份。有矣一头备份才来或进行完全恢复。

 

图片 572. 归档是啊含义 

关于归档日志:Oracle要拿填满的在线日志文件组归档时,则只要建归档日志(archived
redo log)。其针对性数据库备份和还原来下列用处: 

数据库后备以及在线与归档日志文件,在操作系统及磁盘故障中而确保总体交的事物可给还原。 

每当数据库打开和正常体系利用下,如果归档日志是永恒保存,在线后备可以拓展与行使。 

数据库可运行于简单种不同措施下:NOARCHIVELOG方式还是ARCHIVELOG
方式 

数据库在NOARCHIVELOG方式下行使时,不可知开展在线日志的存档, 

数据库在ARCHIVELOG方式下运作,可实施在线日志的存档

 

归档是归档当前的一道redo日志文件。

SVRMGR>
alter system archive log current;

数据库只有运行于ARCHIVELOG模式下,并且能够进行自动归档,才好开展协同备份。有了一同备份才发出或进行完全恢复。

 

图片 582. 归档是啊含义 

至于归档日志:Oracle要拿填满之在线日志文件组归档时,则只要建归档日志(archived
redo log)。其针对性数据库备份和还原来下列用处: 

数据库后备以及在线与归档日志文件,在操作系统和磁盘故障中可是确保一切付的东西可为恢复。 

于数据库打开和健康体系采取下,如果归档日志是恒久保存,在线后备可以拓展与下。 

数据库可运行在点滴种植不同方法下:NOARCHIVELOG方式还是ARCHIVELOG
方式 

数据库在NOARCHIVELOG方式下采取时,不能够开展在线日志的存档, 

数据库在ARCHIVELOG方式下运作,可实施在线日志的存档

 

归档是归档当前底一块redo日志文件。

SVRMGR>
alter system archive log current;

数据库只有运行于ARCHIVELOG模式下,并且会进行活动归档,才好开展协同备份。有矣同步备份才出或开展完全恢复。

 

3. 如果一个阐明在2004-08-04 10:30:00 被drop,在出周的存档和备份的状态下,如何回复

9i 增产的FLASH BACK 应该好;

Logminer应该好寻找有DML。

发宏观的存档和备份,先归档当前数量,然后可以先过来到删除的时间点之前,把DROP
的表导出来,然后再恢复到结尾归档时间;

手工拷贝回所有备份的数据文件 

Sql〉startup mount; 

sql〉alter database recover automatic until time
‘2004-08-04:10:30:00’; 

sql〉alter database open resetlogs;

 

图片 593. 万一一个申明在2004-08-04 10:30:00 被drop,在生宏观之存档和备份的事态下,如何回复

9i
猛增的FLASH BACK 应该可以;

Logminer应该好搜寻来DML。

有完善之存档和备份,先归档当前数量,然后可以先过来至删除的时间点之前,把DROP
的表导出来,然后再度恢复至终极归档时间;

手工拷贝回所有备份的数据文件 

Sql〉startup
mount; 

sql〉alter
database recover automatic until time ‘2004-08-04:10:30:00’; 

sql〉alter
database open resetlogs;

 

图片 603. 如一个发明在2004-08-04 10:30:00 被drop,在出完美之存档和备份的情下,如何恢复

9i
骤增的FLASH BACK 应该好;

Logminer应该可以寻找有DML。

发出周之存档和备份,先归档当前数,然后可以先过来至去的时间点之前,把DROP
的表导出来,然后再恢复至终极归档时间;

手工拷贝回所有备份的数据文件 

Sql〉startup
mount; 

sql〉alter
database recover automatic until time ‘2004-08-04:10:30:00’; 

sql〉alter
database open resetlogs;

 

4. rman凡是什么,有哪特征

RMAN(Recovery
Manager)是DBA的一个主要工具,用于备份、还原和回复oracle数据库, RMAN
可以为此来备份和死灰复燃数据库文件、归档日志、控制文件、系统参数文件,也可据此来实施了要无净的数据库恢复。 

RMAN有三种植不同之用户接口:COMMAND LINE方式、GUI 方式(集成于OEM
中之备份管理器)、API 方式(用于集成到第三正在的备份软件被)。 

装有如下特征: 

1)功能相近物理备份,但比物理备份强大N倍; 

2)可以减小空块; 

3)可以当片水平及贯彻增量; 

4)可以将备份的出口打包成备份集,也堪按一定大小分割备份集; 

5)备份与回复的历程可以自动管理; 

6)可以应用脚本(存在Recovery catalog 中) 

7)可以举行坏块监测

 

图片 614. rman凡啊,有哪特征

RMAN(Recovery
Manager)是DBA的一个重中之重工具,用于备份、还原和恢复oracle数据库, RMAN
可以据此来备份和回复数据库文件、归档日志、控制文件、系统参数文件,也可用来实行了要不全的数据库恢复。 

RMAN有三种植不同的用户接口:COMMAND
LINE方式、GUI 方式(集成以OEM 中之备份管理器)、API
方式(用于集成到第三正的备份软件面临)。 

有着如下特征: 

1)功能类似物理备份,但比物理备份强大N倍; 

2)可以削减空块; 

3)可以于片水平上落实增量; 

4)可以拿备份的输出打包成备份集,也堪随一定大小分割备份集; 

5)备份与还原的长河得活动管理; 

6)可以以脚本(存在Recovery
catalog 中) 

7)可以举行坏块监测

 

图片 624. rman凡啊,有何特点

RMAN(Recovery
Manager)是DBA的一个至关重要工具,用于备份、还原和死灰复燃oracle数据库, RMAN
可以用来备份和还原数据库文件、归档日志、控制文件、系统参数文件,也可以就此来推行了要未完全的数据库恢复。 

RMAN有三栽不同之用户接口:COMMAND
LINE方式、GUI 方式(集成在OEM 中之备份管理器)、API
方式(用于集成到第三在的备份软件面临)。 

怀有如下特征: 

1)功能看似物理备份,但较物理备份强大N倍; 

2)可以减掉空块; 

3)可以于片水平达实现增量; 

4)可以拿备份的出口打包成备份集,也可以依照一定大小分割备份集; 

5)备份与还原的过程可自行管理; 

6)可以运用脚本(存在Recovery
catalog 中) 

7)可以做坏块监测

 

5. standby的特点

备用数据库(standby database):ORACLE推出的一律种植高可用性(HIGH
AVAILABLE)数据库方案,在主节点与备用节点内透过日记同步来保证数据的同步,备用节点作为主节点的备份,可以兑现迅速切换与灾难性恢复,从920从头,还初步支持物理和逻辑备用服务器。

9i中之老三栽多少保护模式分别是:

1)、MAXIMIZE PROTECTION
:最可怜数目保护与众本分歧,LGWR将同时传送至备用节点,在主节点事情确认之前,备用节点吧要完全接纳日志数据。如果网络不好,引起LGWR不可知传送数据,将唤起严重的属性问题,导致主节点DOWN机。 

2)、MAXIMIZE AVAILABILITY
:无数随丢失模式,允许数据分歧,允许异步传送。 

常规情形下运行在绝要命保护模式,在主节点与备用节点的大网断开或连续不正常时,自动切换至最深性模式,主节点的操作还是好延续的。在网络不好的状况下有比充分之性影响。 

3)、MAXIMIZE
PERFORMANCE:这种模式应该可以算得从8i连续过来的备用服务器模式,异步传送,无多少并检查,可能有失数据,但是会赢得主节点的绝要命性。9i于布局DATA
GUARD的上默认就是MAXIMIZE PERFORMANCE

 

 

图片 635. standby的特点

备用数据库(standby
database):ORACLE推出的等同栽高可用性(HIGH
AVAILABLE)数据库方案,在主节点与备用节点内透过日记同步来保证数据的协同,备用节点作为主节点之备份,可以兑现迅速切换与灾难性恢复,从920始发,还初步支持物理及逻辑备用服务器。

9i中之老三种多少保护模式分别是:

1)、MAXIMIZE
PROTECTION
:最深数目保护与博依照分歧,LGWR将同时传送到备用节点,在主节点事情确认之前,备用节点吧须完全接纳日志数据。如果网络不好,引起LGWR不克传送数据,将引起严重的性问题,导致主节点DOWN机。 

2)、MAXIMIZE
AVAILABILITY :无数本丢失模式,允许数据分歧,允许异步传送。 

例行情形下运作于尽老保护模式,在主节点与备用节点的大网断开或连不健康时,自动切换到最好酷性模式,主节点之操作还是得以继续的。在网不好的情况下出于生之性影响。 

3)、MAXIMIZE
PERFORMANCE:这种模式应该可以视为从8i蝉联过来的备用服务器模式,异步传送,无数据并检查,可能有失数据,但是能够博得主节点的最为可怜性。9i以布局DATA
GUARD的时候默认就是MAXIMIZE PERFORMANCE

 

 

图片 645. standby的特点


用数据库(standby database):ORACLE推出的平栽高可用性(HIGH
AVAILABLE)数据库方案,在主节点与备用节点内通过日记同步来保证数据的联合,备用节点作为主节点之备份,可以实现快速切换与灾难性恢复,从
920开始,还初步支持物理及逻辑备用服务器。

9i中之老三种植多少保护模式分别是:

1)、MAXIMIZE
PROTECTION
:最特别数目保护及许多按分歧,LGWR将同时传送至备用节点,在主节点工作确认之前,备用节点吧务必完全接纳日志数据。如果网络不好,引起LGWR不能够传送数据,将唤起严重的习性问题,导致主节点DOWN机。 

2)、MAXIMIZE
AVAILABILITY :无数依照丢失模式,允许数据分歧,允许异步传送。 

健康情形下运作于绝酷保护模式,在主节点与备用节点的大网断开或连不健康时,自动切换到无限要命性模式,主节点之操作还是得持续的。在网不好的景况下产生于生之特性影响。 

3)、MAXIMIZE
PERFORMANCE:这种模式应该可以算得从8i后续过来的备用服务器模式,异步传送,无数据并检查,可能有失数据,但是会博得主节点的无比深性。9i以配置DATA
GUARD的当儿默认就是MAXIMIZE PERFORMANCE

 

 

6. 对于一个要求恢复时间比短缺的网(数据库50G,每天归档5G),你怎样统筹备份策略

数据库比较充分逻辑备份没什么必要,每天归档5G,每周三/周六自动归档10G,每月RMAN归档全库。应该发生standby。

rman/每月同样哀号 level 0 每周末/周三 level 1 其它每天level 2

 

图片 656. 对此一个渴求恢复时间比较少的系(数据库50G,每天归档5G),你怎么样统筹备份策略

数据库比较好逻辑备份没什么必要,每天归档5G,每周三/周六自动归档10G,每月RMAN归档全库。应该有standby。

rman/每月同样如泣如诉
level 0 每周末/周三 level 1 其它每天level 2

 

图片 666. 对一个求恢复时间较缺少的网(数据库50G,每天归档5G),你如何统筹备份策略

数据库比较深逻辑备份没什么必要,每天归档5G,每周三/周六自动归档10G,每月RMAN归档全库。应该发standby。

rman/每月同样哀号
level 0 每周末/周三 level 1 其它每天level 2

 

四:系统管理类


图片 67季:系统管理类


图片 68季:系统管理类


1. 对一个存网性能的体系,说出而的确诊处理思路

(1). 做statspack收集体系有关信息 
了解系统大致情况/确定是不是有参数设置不适宜的地方/查看top 5
event/查看top sql等

(2). 查v$system_event/v$session_event/v$session_wait
从v$system_event开始,确定要什么资源(db file sequential
read)等,深入钻研v$session_event,确定等事件波及的对话,从v$session_wait确定详细的资源争用状态(p1-p3底值:file_id/block_id/blocks等)

(3). 通过v$sql/v$sqltext/v$sqlarea表确定disk_reads、(buffer_gets/executions)值比较生之SQL

 

图片 691. 对于一个设有网性能的系,说发而的诊断处理思路

(1).
做statspack收集系统有关信息 
了解系统大致情况/确定是不是是参数设置不相宜的地方/查看top 5
event/查看top sql等

(2).
查v$system_event/v$session_event/v$session_wait
从v$system_event开始,确定要什么资源(db file sequential
read)等,深入钻研v$session_event,确定等事件波及的对话,从v$session_wait确定详细的资源争用状态(p1-p3底价值:file_id/block_id/blocks等)

(3).
通过v$sql/v$sqltext/v$sqlarea表确定disk_reads、(buffer_gets/executions)值比较生之SQL

 

图片 701. 对于一个存在系统性能的系,说发您的诊断处理思路

(1).
做statspack收集系统相关消息 
了解系统大致情况/确定是否留存参数设置不合适的地方/查看top 5
event/查看top sql等

(2).
查v$system_event/v$session_event/v$session_wait
从v$system_event开始,确定需要什么资源(db file sequential
read)等,深入研讨v$session_event,确定等事件波及的对话,从v$session_wait确定详细的资源争用状态(p1-p3的
值:file_id/block_id/blocks等)

(3).
通过v$sql/v$sqltext/v$sqlarea表确定disk_reads、(buffer_gets/executions)值比较充分之SQL

 

2. 点数几种植诊断IO、CPU、性能状况的计

top  uptime  vmstat  iostat  statspack  sql_trace/tkprof

查v$system_event/v$session_event/v$session_wait

查v$sqlarea(disk_reads或buffer_gets/executions较大的SQL)

或第三在的监视工具,TOAD就不错。

 

图片 712. 列举几种诊断IO、CPU、性能状况的方式

top 
uptime  vmstat  iostat  statspack  sql_trace/tkprof

查v$system_event/v$session_event/v$session_wait

查v$sqlarea(disk_reads或buffer_gets/executions较大的SQL)

要第三正在的监视工具,TOAD就对。

 

图片 722. 罗列几栽诊断IO、CPU、性能状况的点子

top 
uptime  vmstat  iostat  statspack  sql_trace/tkprof

查v$system_event/v$session_event/v$session_wait

查v$sqlarea(disk_reads或buffer_gets/executions较大的SQL)

还是第三着的监视工具,TOAD就天经地义。

 

3. 对statspack有何认识

认不雅。仅限了解。StapSpack是Oracle公司资的一个搜集数据库运行性能指标的软件包。可以举行数据库健康检查报告。

StapSpack是Oracle公司资的一个集数据库运行性能指标的软件包,该软件包打8i自,在9i、10g且发显而易见的加强 

该软件包的辅助表(存储相关参数与征集之性能指标的表明)由最初的25单提高至43只 

采集级别参数由原本的3个(0、5、10)增加至5单(0、5、6、7、10) 

由此分析收集之性能指标,数据库管理员可以详细地问询数据库目前底运转状态,对数据库实例、等待事件、SQL等进行优化调整 

以statspack收集之snapshot,可以统计制作数据库的各种性能指标的统计趋势图表。

 

图片 733. 对准statspack有何认识

认识不要命。仅限了解。StapSpack是Oracle公司供的一个收集数据库运行性能指标的软件包。可以举行数据库健康检查报告。

StapSpack是Oracle公司资的一个募集数据库运行性能指标的软件包,该软件包打8i起,在9i、10g都出拨云见日的增强 

欠软件包之辅助表(存储相关参数与征集的性能指标的说明)由最初的25个增长到43个 

集级别参数由原先的3独(0、5、10)增加至5个(0、5、6、7、10) 

经过分析收集之性能指标,数据库管理员可以详细地了解数据库目前底周转状态,对数据库实例、等待事件、SQL等进行优化调整 

用statspack收集的snapshot,可以统计制作数据库的各种性能指标的统计趋势图表。

 

图片 743. 针对statspack有何认识

认识不杀。仅限了解。StapSpack是Oracle公司供的一个采集数据库运行性能指标的软件包。可以举行数据库健康检查报告。

StapSpack是Oracle公司资的一个征集数据库运行性能指标的软件包,该软件包从8i自,在9i、10g都出显的滋长 

欠软件包的辅助表(存储相关参数和征集之性能指标的发明)由最初的25独提高到43独 

采级别参数由本的3只(0、5、10)增加到5独(0、5、6、7、10) 

透过分析收集的性能指标,数据库管理员可以详细地询问数据库目前之运作状态,对数据库实例、等待事件、SQL等进行优化调整 

动用statspack收集之snapshot,可以统计制作数据库的各种性能指标的统计趋势图表。

 

4. 而系统现在要以一个百般十分之表上创建一个目,你晤面设想那些因素,如何做盖尽力而为减多少对使用的影响

得先表分析一下,然后测试创建索引前后对采用之属性影响;

用考虑的是该索引列不经常更新,不是发生成千上万又复值的景象常常,
在大表中使索引特别有效.
创建的目可以同数据表分不同表空间存储。

 

于网于空闲时nologging选项(如果发dataguard则无可以使用nologging) 

大的sort_ared_size或pga_aggregate_target较大

 

图片 754. 如果系统现在急需以一个杀怪之表上创建一个目,你晤面设想那些因素,如何做盖尽力而为减多少对动的影响

足先表分析一下,然后测试创建索引前后对使用的属性影响;

亟待考虑的是该索引列不常更新,不是发生过多再次复值的图景经常,
在大表中行使索引特别有效.
创建的目录可以与数据表分不同表空间存储。

 

以系较空闲时nologging选项(如果产生dataguard则免得以动用nologging) 

大的sort_ared_size或pga_aggregate_target较大

 

图片 764. 要是系统现在用在一个可怜要命的表上创建一个目录,你见面考虑那些因素,如何做为尽可能减多少对运之震慑

得先表分析一下,然后测试创建索引前后对动的特性影响;

欲考虑的凡该索引列不常更新,不是发为数不少更复值的图景常常,
在大表中采用索引特别有效.
创建的目可以和数据表分不同表空间存储。

 

在系较空闲时nologging选项(如果生dataguard则无得以采取nologging) 

大的sort_ared_size或pga_aggregate_target较大

 

5. 对raid10 和raid5出哪里认识

RAID 10(或称RAID 1+0)与RAID 0+1不同,它是为此硬盘驱动器先组成RAID
1阵列,然后于RAID 1阵列之间又组成RAID 0阵列。 

RAID 10模式同RAID 0+1模式一样有出色的多少传性能,但可比RAID
0+1存有更胜的可靠性。RAID
10阵列的莫过于容量也M×n/2,磁盘利用率为50%。RAID
10啊需要至少4只硬盘驱动器构成,因而价格昂贵。 

RAID 10的可靠性同RAID 1一样,但由于RAID
10硬盘驱动器之间出多少分割,因而数据传性能好。  

RAID 5以及RAID 3很相似,不同之处在于RAID
5的奇偶校验信息为与数一致给剪切保存及拥有的硬盘驱动器,而无是描摹副一个指定的硬盘驱动器,从而解除了么奇偶校验硬盘驱动器的瓶颈问题。RAID
5磁盘阵列的属性比RAID
3有所提高,但照样需要至少3片硬盘驱动器。其实际容量也M×(n-1),磁盘利用率为(n-1)/n
。  

 

图片 775. 针对性raid10 和raid5来何认识

RAID
10(或称RAID 1+0)与RAID 0+1不等,它是为此硬盘驱动器先组成RAID
1阵列,然后在RAID 1阵列之间再组成RAID 0阵列。 

RAID
10模式同RAID 0+1模式一样有可以的数额传性能,但也比RAID
0+1具双重胜似的可靠性。RAID
10阵列的其实容量也M×n/2,磁盘利用率也50%。RAID
10呢得至少4单硬盘驱动器构成,因而价格昂贵。 

RAID
10之可靠性同RAID 1一样,但出于RAID
10硬盘驱动器之间时有发生数量分割,因而数据传性能优良。  

RAID
5和RAID 3很相像,不同之处在于RAID
5的奇偶校验信息呢同数一致被分开保存到具备的硬盘驱动器,而未是形容副一个点名的硬盘驱动器,从而消除了单个奇偶校验硬盘驱动器的瓶颈问题。RAID
5磁盘阵列的性能比RAID
3有所提高,但照样要至少3块硬盘驱动器。其实际容量为M×(n-1),磁盘利用率也(n-1)/n
。  

 

图片 785. 对raid10 和raid5闹哪里认识

RAID
10(或称RAID 1+0)与RAID 0+1例外,它是用硬盘驱动器先组成RAID
1阵列,然后于RAID 1阵列之间还组成RAID 0阵列。 

RAID
10模式同RAID 0+1模式一样享有得天独厚的数码传性能,但却比RAID
0+1拥有双重胜之可靠性。RAID
10阵列的实际容量为M×n/2,磁盘利用率也50%。RAID
10啊需要至少4单硬盘驱动器构成,因而价格昂贵。 

RAID
10的可靠性同RAID 1一样,但由RAID
10硬盘驱动器之间产生多少分割,因而数据传性能优异。  

RAID
5同RAID 3很相似,不同之处在于RAID
5的奇偶校验信息吗同数一致叫划分保存及拥有的硬盘驱动器,而休是描写副一个指定的硬盘驱动器,从而打消了么奇偶校验硬盘驱动器的瓶颈问题。RAID
5磁盘阵列的性质比RAID
3有所提高,但还是需要至少3块硬盘驱动器。其实际容量为M×(n-1),磁盘利用率为(n-1)/n
。  

 

五:综合随意类


图片 79五:综合随意类


图片 80五:综合随意类


1. 你太擅长的是oracle哪有?

pl/sql及sql优化

 

图片 811. 而无比拿手的是oracle哪部分?

pl/sql及sql优化

 

图片 821. 君无与伦比擅长的凡oracle哪一部分?

pl/sql及sql优化

 

2. 喜欢oracle吗?喜欢上论坛为?或者偏好oracle的啦有?

 喜欢。PL/SQL比较得心应手。

 

图片 832. 喜欢oracle吗?喜欢上论坛为?或者偏好oracle的呀有?

 喜欢。PL/SQL比较得心应手。

 

图片 842. 喜欢oracle吗?喜欢上论坛也?或者偏好oracle的啦有?

 喜欢。PL/SQL比较得心应手。

 

3. 随意说说你看oracle最有趣的有些或最好艰难的有些

我本着数据库的备份/恢复与特性调优经验明显不足,自然觉得有点艰难。

冲ORACLE的钻该是独泛的小圈子,所以我觉着还是有意思的。

 

图片 853. 肆意说说公以为oracle最有趣的组成部分还是最好艰难的部分

自己对数据库的备份/恢复跟总体性调优经验明显供不应求,自然觉得多少不便。

依据ORACLE的研讨相应是单大的园地,所以我觉得要有意思的。

 

图片 863. 肆意说说公当oracle最有意思的一些或者太困难的一些

自家对数据库的备份/恢复跟性能调优经验明显供不应求,自然觉得有点困难。

据悉ORACLE的钻研相应是独科普的领域,所以自己当要有意思的。

 

4. 为什么而选取做DBA呢?

自身对数据库的备份/恢复跟总体性调优经验明显供不应求,主要是缺失环境暨交流。

因此,算不达标什么DBA。不过用我再也亟待这样的火候。

可即使举ORACLE
来说,一直从与她相关的做事,感情或不行深的。放弃可惜。而且就算技术自而言自觉着自己还是时有发生攻与换代之力,它的比如说数据仓库,数据挖掘之类的领域呢异常广泛。

 

图片 874. 怎么而选取做DBA呢?

本身本着数据库的备份/恢复与性调优经验明显供不应求,主要是少环境和交流。

用,算不达啊DBA。不过用我更要这样的机会。

但是即使全部ORACLE
来说,一直从事和她相关的做事,感情还是挺深的。放弃可惜。而且就技术自而言自觉得自己或者有学习与更新之力,它的比如说数据仓库,数据挖掘之类的领域为蛮普遍。

 

图片 884. 胡设选取做DBA呢?

本人本着数据库的备份/恢复与性调优经验明显供不应求,主要是短缺环境暨交流。

为此,算不达标啊DBA。不过用我再也亟待如此的机遇。

而就合ORACLE
来说,一直从事和它相关的做事,感情还是老大的。放弃可惜。而且就算技术本身而言自觉着好或时有发生上学与创新的力量,它的比如说数据仓库,数据挖掘之类的小圈子呢深广泛。

 

5. 存储过程与函数的区别

存储过程是用户定义的一致多重sql语句之会师,涉及特定表或其它对象的职责,用户可调用存储过程,而函数通常是数据库已经定义的法,它接受参数并回到某种类型的价并且不涉特定用户表。

 

图片 895. 囤过程以及函数的区分

存储过程是用户定义之同一多重sql语句的集合,涉及特定表或其它对象的任务,用户可调用存储过程,而函数通常是数据库已经定义之主意,它接受参数并返回某种类型的值并且不关乎特定用户表。

 

图片 905. 囤积过程及函数的别

储存过程是用户定义之均等多级sql语句的聚众,涉及特定表或外对象的职责,用户可以调用存储过程,而函数通常是数据库都定义之方式,它接受参数并返回某种类型的价并且不干特定用户表。

 

6. 事务是呀?

事情是当做一个逻辑单元执行之平等多级操作,一个逻辑工作单元必须来四只属性,称为
ACID(原子性、一致性、隔离性和持久性)属性,只有这样才会化一个事务:

原子性:事务必须是原子工作单元;对于那个数量修改,要么全都执行,要么全都无履行。

一致性:事务在成就时,必须使所有的数码还保持一致状态。在连锁数据库被,所有条条框框都须采取叫业务的改,以保持有数据的完整性。事务了时,所有的内数据结构(如
B 树索引或双向链表)都不能不是对的。

隔离性:由并发事务所作的改动要跟另其它并发事务所作的修改隔离。事务查看数据经常数所处之状态,要么是其余一样连发事务修改它前面的状态,要么是别一样事情修改它后的状态,事务不会见翻动中间状态的多少。这叫做可串行性,因为其会重新装载起始数据,并且重播一多样工作,以要数码截止时之状态和旧事务执行的状态同样。

持久性:事务完成以后,它对于系的熏陶是永久性的。该改就出现系统故障为将直接保持。

 

图片 916. 事务是啊?

工作是作一个逻辑单元执行之一模一样多元操作,一个逻辑工作单元必须产生四单属性,称为
ACID(原子性、一致性、隔离性和持久性)属性,只有这么才能够化一个政工:

原子性:事务必须是原子工作单元;对于其数额修改,要么全都执行,要么全都不实施。

一致性:事务在形成时,必须要有的数据都保持一致状态。在连带数据库被,所有规则都要运用被工作之修改,以保障有数据的完整性。事务了时,所有的中数据结构(如
B 树索引或双向链表)都必须是对的。

隔离性:由并发事务所作的修改要与任何其他并发事务所作的改动隔离。事务查看数据时数所处之状态,要么是外一样连发事务修改它之前的状态,要么是任何一样政工修改它之后的状态,事务不会见翻动中间状态的数。这名可串行性,因为其会再装载起始数据,并且重播一名目繁多工作,以要数码截止时之状态及原事务执行的状态同样。

持久性:事务完成后,它于系的影响是永久性的。该改就出现系统故障为拿直维系。

 

图片 926. 政工是什么?

业务是当一个逻辑单元执行之均等系列操作,一个逻辑工作单元必须发四单特性,称为
ACID(原子性、一致性、隔离性和持久性)属性,只有这样才能够化一个作业:

原子性:事务必须是原子工作单元;对于那个数量修改,要么全都执行,要么全都不执。

一致性:事务在成就时,必须要有的数码都保持一致状态。在有关数据库被,所有规则都必动为事情之改,以保有数据的完整性。事务了时,所有的中间数据结构(如
B 树索引或双向链表)都要是对的。


离性:由并发事务所作的改要与其它其他并发事务所作的修改隔离。事务查看数据常常数所处之状态,要么是其它一样连发事务修改它之前的状态,要么是别一样从务
修改它今后的状态,事务不会见翻动中间状态的多少。这称之为可串行性,因为其会更装载起始数据,并且重播一多重工作,以要数码截止时之状态与原本事务执行
的状态同样。

持久性:事务完成之后,它对系的熏陶是永久性的。该改就出现系统故障为拿直接维持。

 

7. 游标的企图?如何掌握游标已经交了最终?

游标用于固定结果集的履,通过判断全局变量@@FETCH_STATUS可以判断是否到了最终,通常这变量不等于0表示出错或交了最终。

 

图片 937. 游标的图?如何知道游标已经到了最终?

游标用于固定结果集的施行,通过判断全局变量@@FETCH_STATUS可以判定是否到了最终,通常这个变量不等于0表示出错或顶了最后。

 

图片 947. 游标的来意?如何了解游标已经到了最后?

游标用于固定结果集的履行,通过判断全局变量@@FETCH_STATUS可以判是否到了最后,通常是变量不等于0表示出错或到了最后。

 

8. 触发器分为事前触及和之后触及,这简单种植触发有和区别。语句级触发和行级触发有哪区别。

之前触发器运行为点事件发生前,而其后触发器运行于点事件闹后。通常事先触发器可以得到事件前和初的配段值。

语句级触发器可以于言辞执行前还是后实施,而行级触发在触发器所影响之各一行触发一糟糕。

http://www.cnblogs.com/eastsea/p/3905585.html

图片 958. 触发器分为事前接触和之后接触,这有限栽触发有和界别。语句级触发和行级触发有哪里区别。

事先触发器运行为点事件闹之前,而下触发器运行于点事件来之后。通常事先触发器可以得到事件前跟初的字段值。

语句级触发器可以以言语执行前或者后实行,而行级触发在触发器所影响之每一行触发一潮。

 

Thanks and Regards

图片 96

图片 978. 触发器分为事前点和之后点,这片种植触发有和区别。语句级触发和行级触发有何区别。

前面触发器运行为点事件来之前,而随后触发器运行于点事件发生以后。通常事先触发器可以得到事件前与初的配段值。

语句级触发器可以于谈执行前还是后实施,而行级触发在触发器所影响之各级一行触发一软。

 

Thanks and Regards

图片 98

相关文章