使用SQL來分析資料庫引數(一)(r10筆記第68天)
對於10g,11g,12c中的引數變化有時候感覺就是使不上勁,因為引數好像很多,但是瞭解的又很少。隱含引數經常是碰到問題的時候關聯思考發現有這麼一個隱含引數,有些問題可能有意識還會主動去查查,如果恍惚一下就算了。如此一來,其實對於資料庫引數而言我們很多人也還是一知半解。
怎麼得到去分析資料庫引數的變化情況呢,突然想到使用SQL來分析是個不錯的方法。比如我現在希望解決下面的問題。
正式引數和隱含引數的資料情況
哪些引數是11g新增的?
那些是12c新增的?
哪些11g的隱含引數,在12c正式引入?
哪些是11g的隱含引數,在12c中被廢棄?
哪些是10g的隱含引數,在11g被廢棄?
哪些是10g的隱含引數,在11g被正式引入?
哪些是10g預設的引數,在11g有所變化?
哪些是11g預設的引數,在12c中有所變化?
看來我提出了不少的問題,但是解決起來純手工那是遙遙無期,還是使用SQL吧。
首先我們需要做一些基本的鋪墊,怎麼得到對應的資料。
如果想得到一份完成的引數列表,可以參考v$parameter這個是正式公佈的引數,還有一部分是隱含引數。他們的差別其實就是欄位的過濾條件不同,基表是相同的,都是x$的記憶體表。
可以使用如下的SQL得到完整的引數列表,包含隱含引數和正式引數
spool all_param.lst set pages 0 set linesiz 200 select (select version from v$instance)||'|'||'ALL'||'|'||x.ksppinm||'|'||y.ksppstvl ||'|'||y.ksppstdf||'|'||decode(bitand(ksppilrmflg / 64, 1), 1, 'TRUE', 'FALSE')||'|'||ksppdesc from sys.x$ksppi x, sys.x$ksppcv y where x.inst_id = userenv('Instance') and y.inst_id = userenv('Instance') and x.indx = y.indx order by translate(x.ksppinm, ' _', ' '); spool off
可以使用如下的SQL得到公開的正式引數
spool db_param.lst set pages 0 set linesize 200 select (select version from v$instance)||'|'||'GENERAL'||'|'||name||'|'||value||'|'||isdefault||'|'||isdeprecated||'|'||description from v$parameter ; spool off
然後可以找幾個有針對性的環境,比如10g我是參考10.2.0.5.0,11g參考11.2.0.4.0,12c參考12.1.0.2.0
簡單的一個資料分佈情況如下:
10g版本
共1620 個引數
供260 個公開引數,即v$parameter中可以查到的。
11g版本
共2914個引數
供352個公開引數,即v$parameter中可以查到的。
12c版本
共3978個引數
供382個公開引數,即v$parameter中可以查到的。
得到了引數的列表,我們可以匯入到一個表中統一管理分析。可以建立一個表如下:
create table db_param_all (db_version varchar2(10),param_type varchar2(10),name varchar2(80),value varchar(512),isdefault varchar2(9),isdeprecated varchar2(5),description varchar2(255));
而怎麼匯入資料呢,還是SQL*Loader吧。
load data
infile *
append into table db_param_all
fields terminated by '|'
(db_version,param_type,name,value,isdefault,isdeprecated,description))
完成以上的步驟,就可以做一些基本的資料分析了,至少很多不確定的問題都可以自己找到答案。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30633755/viewspace-2127713/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用SQL來分析資料庫引數(二)SQL資料庫
- 《亂》觀後感(r10筆記第93天)筆記
- 一條SQL語句的執行計劃變化探究(r10筆記第9天)SQL筆記
- 最近看過的書(r10筆記第92天)筆記
- Nagios資料庫引數配置分析iOS資料庫
- 資料遷移整合中的幾個問題總結(r10筆記第99天)筆記
- 《共同警戒區》觀後感(r10筆記第97天)筆記
- 【SQL】通過對分析使用者快速獲得資料庫中表記錄數SQL資料庫
- Oracle中的ROWID實現(r10筆記第95天)Oracle筆記
- 關於SQL資料庫一些簡單的筆記SQL資料庫筆記
- 第 67 期 Go database/sql 資料庫連線池分析GoDatabaseSQL資料庫
- SQL 記錄資料庫連線數資訊SQL資料庫
- 易學筆記-系統分析師考試-第5章 資料庫系統/5.1 資料庫模式/筆記資料庫模式
- Django筆記二十一之使用原生SQL查詢資料庫Django筆記SQL資料庫
- MySQL資料庫引數MySql資料庫
- SQL Server 資料庫基礎筆記分享(上)SQLServer資料庫筆記
- SQL Server 資料庫基本記錄(一)SQLServer資料庫
- 相差數十倍的SQL效能分析(r11筆記第98天)SQL筆記
- 查詢資料庫隱含引數的sql語句資料庫SQL
- 使用RMAN建立資料庫備份庫(筆記)資料庫筆記
- 讀書筆記:深入解析oracle-第3章 引數及引數檔案筆記Oracle
- 《資料庫系統概論》 (第4版) 個人筆記資料庫筆記
- 調整資料庫引數資料庫
- 值得推薦的幾部日本電影(三)(r10筆記第29天)筆記
- 如何使用MySQL資料庫來分析Apache日誌?MySql資料庫Apache
- 使用DataPump的Sample引數來進行資料抽樣
- PostgreSQL技術大講堂 - 第32講:資料庫引數調整SQL資料庫
- SQL Server效能分析引數 (轉)SQLServer
- Oracle 19C 資料庫引數推薦(一)Oracle資料庫
- 顯示資料庫所有引數資料庫
- Oracle 資料庫引數調整Oracle資料庫
- SQL Server資料庫記憶體增加的問題分析SQLServer資料庫記憶體
- Bootstrap Table 學習筆記之列引數(一)boot筆記
- 資料庫學習筆記——20 使用遊標資料庫筆記
- 二十四:從庫資料的查詢和引數slave_rows_search_algorithms(筆記)Go筆記
- iOS開發筆記— 資料庫、Crash、記憶體問題分析iOS筆記資料庫記憶體
- 使用binlog2sql工具來恢復資料庫SQL資料庫
- 第24節 從庫資料查詢和引數slave_rows_search_algorithmsGo