自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

DB2強制優(yōu)化器的使用“竅門”不得不看

數(shù)據(jù)庫
以下的文章主要描述的是在實際操作中DB2強制優(yōu)化器的使用技巧,假如你對其實際操作技巧有興趣了解的話,你就可以瀏覽下面的文章了。

以下的文章主要描述的是在實際操作中DB2強制優(yōu)化器的使用技巧,很多開發(fā)與數(shù)據(jù)庫管理人員都在為優(yōu)化器問題發(fā)牢騷。盡管很多時候優(yōu)化器問題一般都是可以通過常規(guī)手段解決的,但是在某些特殊情況下。

或者緊急情況(沒有時間完整地分析問題)下,用戶可以使用profile暫時強制優(yōu)化器使用某些特定的操作。。。

下面是一個step by step的例子,簡單地說明了怎樣DB2強制優(yōu)化器使用table scan

  1. DB21085I Instance "DB2" uses "32" bits and DB2 code release "SQL09010" with   
  2. level identifier "02010107".   
  3. Informational tokens are "DB2 v9.1.0.356", "s060629", "NT32", and Fix Pack "0".   
  4. Product is installed at "D:\PROGRA~1\IBM\SQLLIB\" with DB2 Copy Name   
  5. "DB2COPY1".  

創(chuàng)建一個數(shù)據(jù)

  1. D:\TEMP\db2service.perf1>db2 create db sampel2DB20000I The CREATE DATABASE command completed successfully.   
  2. D:\TEMP\db2service.perf1>db2 connect to sampel2   
  3. Database Connection Information   
  4. Database server = DB2/NT 9.1.0   
  5. SQL authorization ID = TAOEWANG   
  6. Local database alias = SAMPEL2  

創(chuàng)建優(yōu)化器系統(tǒng)表

  1. D:\TEMP\db2service.perf1>db2 "create table systools.opt_profile (schema VARCHAR(128) not null, name varchar(128) 
    not null, profile blob (2M) not null, primary key (schema, name))"   
  2. DB20000I The SQL command completed successfully.   
  3. D:\TEMP\db2service.perf1>cd ..  

創(chuàng)建用戶表

  1. D:\TEMP>db2 "create table mytable (name varchar(128), id integer, salary float,phone varchar(20))"   
  2. DB20000I The SQL command completed successfully.  

插入一些數(shù)據(jù)

  1. D:\TEMP>db2 "insert into mytable values ('tao wang', 12345, 100, '123-456')"   
  2. DB20000I The SQL command completed successfully.   
  3. D:\TEMP>db2 "insert into mytable values ('diablo2', 12346, 101, '123-457')"   
  4. DB20000I The SQL command completed successfully.   
  5. D:\TEMP>db2 "insert into mytable values ('whiterain', 123, 102, '123-458')"   
  6. DB20000I The SQL command completed successfully.   
  7. D:\TEMP>db2 "insert into mytable values ('ganquan', 1255, 104, '123-459')"   
  8. DB20000I The SQL command completed successfully.  

DB2強制優(yōu)化器的使用

下面是一個step by step的例子,簡單地說明了怎樣強制優(yōu)化器使用table scan

  1. DB21085I Instance "DB2" uses "32" bits and DB2 code release "SQL09010" with   
  2. level identifier "02010107".   
  3. Informational tokens are "DB2 v9.1.0.356", "s060629", "NT32", and Fix Pack "0".   
  4. Product is installed at "D:\PROGRA~1\IBM\SQLLIB\" with DB2 Copy Name   
  5. "DB2COPY1".  

創(chuàng)建一個數(shù)據(jù)庫

  1. D:\TEMP\db2service.perf1>db2 create db sampel2DB20000I The CREATE DATABASE command completed successfully.   
  2. D:\TEMP\db2service.perf1>db2 connect to sampel2   
  3. Database Connection Information   
  4. Database server = DB2/NT 9.1.0   
  5. SQL authorization ID = TAOEWANG   
  6. Local database alias = SAMPEL2  

創(chuàng)建優(yōu)化器系統(tǒng)表

  1. D:\TEMP\db2service.perf1>db2 "create table systools.opt_profile (schema VARCHAR(128) not null, 
    name varchar(128) not null, profile blob (2M) not null, primary key (schema, name))"   
  2. DB20000I The SQL command completed successfully.   
  3. D:\TEMP\db2service.perf1>cd ..  

創(chuàng)建用戶表

  1. D:\TEMP>db2 "create table mytable (name varchar(128), id integer, salary float,phone varchar(20))"   
  2. DB20000I The SQL command completed successfully.  

插入一些數(shù)據(jù)

  1. D:\TEMP>db2 "insert into mytable values ('tao wang', 12345, 100, '123-456')"   
  2. DB20000I The SQL command completed successfully.   
  3. D:\TEMP>db2 "insert into mytable values ('diablo2', 12346, 101, '123-457')"   
  4. DB20000I The SQL command completed successfully.   
  5. D:\TEMP>db2 "insert into mytable values ('whiterain', 123, 102, '123-458')"   
  6. DB20000I The SQL command completed successfully.   
  7. D:\TEMP>db2 "insert into mytable values ('ganquan', 1255, 104, '123-459')"   
  8. DB20000I The SQL command completed successfully.  

現(xiàn)在優(yōu)化器用了index scan
 

  1. Original Statement:   
  2. ------------------   
  3. SELECT *   
  4. FROM TAOEWANG.MYTABLE   
  5. WHERE ID < 1000   
  6. Optimized Statement:   
  7. -------------------   
  8. SELECT Q1.NAME AS "NAME", Q1.ID AS "ID", Q1.SALARY AS "SALARY", Q1.PHONE AS   
  9. "PHONE"   
  10. FROM TAOEWANG.MYTABLE AS Q1   
  11. WHERE (Q1.ID < 1000)   
  12. Access Plan:   
  13. -----------   
  14. Total Cost: 7.56853   
  15. Query Degree: 1   
  16. Rows   
  17. RETURN   
  18. ( 1)   
  19. Cost   
  20. I/O   
  21. |   
  22. 1   
  23. FETCH   
  24. ( 2)   
  25. 7.56853   
  26. 1   
  27. /----+---\   
  28. 1 4   
  29. IXSCAN TABLE: TAOEWANG   
  30. ( 3) MYTABLE   
  31. 0.00630865   
  32. 0   
  33. |   
  34. 4   
  35. INDEX: TAOEWANG   
  36. IX1  

以上的相關(guān)內(nèi)容就是對DB2強制優(yōu)化器的使用技的介紹,望你能有所收獲。

【編輯推薦】

  1. 對DB2數(shù)據(jù)庫編目概念正確理解
  2. DB2 物化查詢表以及其他常用表的介紹
  3. DB2數(shù)據(jù)庫SQL編碼優(yōu)化與性能描述
  4. DB2數(shù)據(jù)庫開發(fā)與PostgreSQL開發(fā)中的異同點
  5. DB2用戶密碼修改與備份恢復(fù)的正確應(yīng)用

     
責任編輯:佚名 來源: 比特網(wǎng)
相關(guān)推薦

2010-08-02 11:01:29

DB2 Resotre

2010-08-18 11:36:40

DB2簡史

2010-08-18 15:01:08

DB2 9安裝方法

2010-08-19 13:36:11

DB2數(shù)據(jù)類型

2010-07-30 17:33:26

2010-08-12 15:16:50

DB2在線備份

2010-08-20 09:38:53

DB2 常見問題解答

2010-08-03 08:46:23

DB2 9.5高可用性

2010-08-09 15:31:03

2010-05-26 15:58:52

MySQL遠程連接

2010-05-10 13:01:03

OracleDBA面試

2010-05-21 09:40:57

MySQL出錯代碼列表

2010-05-25 09:58:43

MySQL數(shù)據(jù)庫

2010-09-28 09:42:16

2010-07-23 18:39:52

SQL Server游

2014-10-30 13:38:55

編程算法程序員

2010-04-21 17:19:29

Oracle創(chuàng)建

2019-12-10 15:30:27

SaaSIaaS云計算

2010-05-18 10:34:29

MySQL數(shù)據(jù)庫備份

2010-05-26 13:14:22

MySQL錯誤解決方案
點贊
收藏

51CTO技術(shù)棧公眾號