摘要:新晉技術(shù)專家下面是墨天輪部分新晉的技術(shù)專家。大家可以點(diǎn)擊往期閱讀墨天輪技術(shù)專家邀請函了解詳情,申請成為我們的技術(shù)專家,加入專家團(tuán)隊,與我們一起創(chuàng)建一個開放互助的數(shù)據(jù)庫技術(shù)社區(qū)。新關(guān)聯(lián)公眾號墨天輪是一個開放互助的數(shù)據(jù)庫技術(shù)社區(qū)。
引言
近期我們在DBASK小程序增加了數(shù)據(jù)庫 MongoDB、Redis、 Elasticsearch、DB2、Weblogic 等新的的專題欄目和一些新的技術(shù)專家,另外,也新關(guān)聯(lián)了技術(shù)閑談、OB、架構(gòu)文摘、51CTO技術(shù)棧等等數(shù)據(jù)領(lǐng)域的公眾號,歡迎大家閱讀分享。
新晉技術(shù)專家
下面是墨天輪DBASK部分新晉的技術(shù)專家。大家可以點(diǎn)擊往期閱讀《墨天輪DBASK技術(shù)專家邀請函》了解詳情,申請成為我們的技術(shù)專家,加入專家團(tuán)隊,與我們一起創(chuàng)建一個開放互助的數(shù)據(jù)庫技術(shù)社區(qū)。
新關(guān)聯(lián)公眾號
墨天輪DBASK是一個開放互助的數(shù)據(jù)庫技術(shù)社區(qū)。所以,我們也新關(guān)聯(lián)了技術(shù)閑談、OB、架構(gòu)文摘、51CTO技術(shù)棧等等數(shù)據(jù)領(lǐng)域的公眾號,方便大家的閱讀。如果有和數(shù)據(jù)相關(guān)的公眾號,有文章轉(zhuǎn)載合作的需求,可以留言聯(lián)系小編哦~
問答集萃
接下來,我們分享本期整理出的問題和診斷總結(jié),供大家參考學(xué)習(xí),詳細(xì)的診斷分析過程可以通過標(biāo)題鏈接跳轉(zhuǎn)到小程序中查看。
問題一、總結(jié)不走索引的常見情況
請問SQL什么情況下不走索引,幫忙總結(jié)一下。
診斷結(jié)論:1、謂詞中出現(xiàn)NULL過濾條件;2、謂詞中出現(xiàn)函數(shù)轉(zhuǎn)換導(dǎo)致沒有走索引;3、統(tǒng)計信息不準(zhǔn)確;4、在WEHRE條件中l(wèi)ike中關(guān)鍵字兩邊都有"%";5、查詢條件值與列類型不一致;6、查詢條件列進(jìn)行數(shù)學(xué)運(yùn)算;7、索引列在 IN 或者多個 OR 語句中;8、是否使用的是不可見索引等。
問題二、sid和服務(wù)名,和tns別名的區(qū)別
sid和服務(wù)名,和tns別名的區(qū)別。之間是如何區(qū)分的?
診斷結(jié)論:拿兩節(jié)點(diǎn)RAC的情況說明下吧:db1/db2為兩個節(jié)點(diǎn)的sid,是兩個節(jié)點(diǎn)數(shù)據(jù)庫實(shí)例的唯一名稱,與instance_name參數(shù)一致分別為db1/db2;db為服務(wù)名,方便應(yīng)用連接數(shù)據(jù)庫,與service_name參數(shù)一致兩個節(jié)點(diǎn)為db;tns別名為在tnsnames.ora文件中自定義的別名,應(yīng)用使用此別名連接數(shù)據(jù)庫,如連接字符串為db,tns別名設(shè)置為crmdb,應(yīng)用連接直接使用crmdb即可,方便辨別。
問題三、oracle DG failover后更改flashback操作的并行度
我這邊遇到一個問題,想改變DG在failover后主庫進(jìn)行的flashback操作時的并行度,就是主庫執(zhí)行flashback to scn xxxxxx的命令所默認(rèn)的并行度。我們觀察到默認(rèn)是128的parallel,但是由于某些原因,我們可能需要降低并行度,請問有什么參數(shù)可以控制嗎?
我在網(wǎng)上到處都找不到相關(guān)文章,也無法從專業(yè)書籍里找到類似的研究。
診斷結(jié)論:經(jīng)測試,flashback的并行度默認(rèn)受CPU_COUNT參數(shù)控制。
問題四、MySQL體系結(jié)構(gòu)中一直說也有SGA和PGA,請問具體位置在哪?
MySQL 體系結(jié)構(gòu)中一直說也有 SGA 和 PGA,5.7 的官方文檔也沒有描述,那請問是在 InnoDB 中,還是具體位置在哪?
診斷結(jié)論:一般而言,如果對應(yīng)于Oracl的這兩個對應(yīng)概念,SGA指的是以Innodb buffer pool,innodb字典,frm緩存等公用緩存組合出來的內(nèi)存區(qū)域。PGA指的是以sort buffer,binlog buffer等線程專用內(nèi)存組合成的內(nèi)存區(qū)域。
問題五、oracle 11g支持IPV6嗎?
公司最近在做IPV6的改造方案,我想問下對現(xiàn)有oracle數(shù)據(jù)庫會有什么影響嗎?公司主要用oracle11g和oracle12c。
診斷結(jié)論:11gr2支持單節(jié)點(diǎn)使用ipv6,12cR1支持public IP的ipv6(內(nèi)聯(lián)不支持),12cR2完全支持。
問題六、move表后,表空間可用300G,但是無法resize
由于磁盤組冗余度不符合安全要求,對各表空間(Bigfile)進(jìn)行清理后嘗試做數(shù)據(jù)文件的resize操作,過程如下:
1、新建表空間,作為數(shù)據(jù)中轉(zhuǎn)用
2、MOVE大部分表(90%)至其新建表空間后MOVE回原有表空間,從而減少數(shù)據(jù)庫碎片
3、收縮對應(yīng)的數(shù)據(jù)文件在MOVE回原有表空間后重建相關(guān)索引,統(tǒng)計發(fā)現(xiàn)可用空間提高40G左右,有效的減少了碎片
但是無法resize數(shù)據(jù)文件到MOVE之后的大小。
診斷結(jié)論:實(shí)際上按照你的操作思路,可以move 100%的表都去另外一個表空間,然后直接drop掉原有表空間就可以了。如果存在沒MOVE表的EXTENTS已經(jīng)擴(kuò)展到了數(shù)據(jù)文件的邊緣,是沒辦法resize的。
問題七、如何快速預(yù)估表的行數(shù)
請問有哪些方法可以快速預(yù)估表的行數(shù)?
診斷結(jié)論:1、并行查詢count(*);2、統(tǒng)計信息num_rows字段;3、sample block() 取樣查詢。
問題八、RAC配置多個public網(wǎng)絡(luò)
現(xiàn)在有一個需求,客戶有兩個網(wǎng)絡(luò),都需要連接數(shù)據(jù)庫,需要配置兩個public網(wǎng)絡(luò),請問如何配置。
診斷結(jié)論:首先官方建議不要在安裝Oracle時配置多個public網(wǎng)絡(luò),等集群安裝完之后再通過命令去添加public網(wǎng)絡(luò),測試步驟詳見小程序文章。
問題九、關(guān)于分區(qū)表全局分區(qū)索引和全局不分區(qū)索引的效率
按月分區(qū)的分區(qū)表,單個分區(qū)表記錄大約1500萬,對于非分區(qū)鍵上的索引來說,是建全局分區(qū)索引還是不分區(qū)索引效率高?分區(qū)索引按照列HASH分區(qū)還是有其它方式?
專家解答:LOCAL索引的最大好處是在進(jìn)行分區(qū)操作,比如TRUNCATE PARTITION, DROP PARTITION時,不會出現(xiàn)索引INVALID的情況,不影響索引的可用性。由于GLOBAL索引所有的數(shù)據(jù)存儲在一起,因此當(dāng)執(zhí)行分區(qū)操作的時候,索引會失效,而如果想要保證所有的有效性,需要增加UPDATE (GLOBAL) INDEXES語句,這使得原本很快結(jié)束的DDL操作,由于需要維護(hù)全局索引而變得非常緩慢,且產(chǎn)生大量的日志。12c之后,全局索引的異步同步可以緩解全局索引的這個問題。
而GLOBAL索引的好處是,在表變?yōu)榉謪^(qū)后,只要索引仍然是GLOBAL索引,通過索引訪問數(shù)據(jù)的效率就不會下降。由于LOCAL索引的索引分區(qū)數(shù)量和表分區(qū)數(shù)量相等,如果訪問一個LOCAL索引,且查詢條件未指定分區(qū)鍵值,這時Oracle將會掃描所有的索引分區(qū)。而GLOBAL索引則只需要訪問一棵索引樹,當(dāng)分區(qū)數(shù)量眾多時,二者的效率差異是非常明顯的。
當(dāng)然,它們還有其他的區(qū)別。就用戶而言,判斷需要GLOBAL還是LOCAL索引,最主要看是否會頻繁進(jìn)行分區(qū)的維護(hù)操作,比如定期刪除老分區(qū),如果是的話,LOCAL是最佳選擇,如果不是,則考慮GLOBAL索引。
問題十、同樣的SQL,變量不同執(zhí)行計劃不一樣
一條相似的SQL語句,變量值不同,執(zhí)行計劃不同。SQL如下:
select order_no from OWNER.TAB_NAME where pa_id = "10221178" and ORDER_TIME > SYSDATE - 120;(異常)select order_no from OWNER.TAB_NAME where pa_id = "10221178" and ORDER_TIME > SYSDATE - 150
診斷結(jié)論:120的trc文件可以看到成本最低的是bit map and的執(zhí)行路徑,120的trc文件可以看到成本最低的是bit map and的執(zhí)行路徑。至于為什么兩個執(zhí)行計劃不一樣,應(yīng)該和IDX_XXX索引選擇率變化導(dǎo)致bit map的成本增加有關(guān)。
問題十一、oralce 11g RAC 系統(tǒng)時間同步問題
oralce 11g RAC 系統(tǒng)時間慢慢的就比正常時間慢了,如何解決呢,rac節(jié)點(diǎn)之間時間是同步的,但是比實(shí)際時間慢出30分鐘,這個問題如何避免呢,rac本身自帶了時間同步的服務(wù),還可以在外面再加ntp服務(wù)嗎?
診斷結(jié)論:一般都是在兩節(jié)點(diǎn)開啟NTP服務(wù),同步外部NTP服務(wù)器的時間,實(shí)踐中都是配置NTP服務(wù)。如果啟用NTP服務(wù),集群自己的ctss服務(wù)會停止,沒有影響。如果需要啟用NTP,特殊情況下可能會導(dǎo)致節(jié)點(diǎn)重啟,保險起見,可以到下次停機(jī)窗口一起變更。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/39039.html
閱讀 1627·2021-11-11 10:59
閱讀 2635·2021-09-04 16:40
閱讀 3671·2021-09-04 16:40
閱讀 2990·2021-07-30 15:30
閱讀 1668·2021-07-26 22:03
閱讀 3172·2019-08-30 13:20
閱讀 2236·2019-08-29 18:31
閱讀 446·2019-08-29 12:21