越來越發現自己不懂的還是不少--繫結變數
我從學習資料庫開始就知道,硬解析會有很大問題。我接觸的資料庫中貌似只有Oracle會涉及到這個。有的時候我自同等環境下(硬體配置和場景)測試下來Oracle會由於其他資料庫的資料,我有時候就在想會不會這就是軟解析和軟軟解析帶來的效果?
不過十幾年工作下來,幾乎沒有遇到過硬解析帶來的問題。但是試問蒼天饒過誰。我這就遇到了。而且還重新整理了我對繫結變數的一些新的認知。
發現一個系統,故障時段硬解析很高。對比了一下故障後的硬解析下降了1000倍。這是很驚人的。
發現問題時候有一些SQL的版本較高有90多個,雖然比起網上有些幾百個的來說不算多,但是幾十個也不少了。我們都知道不繫結變數是什麼樣子的(就是寫入實際引數),我也知道繫結變數多了會怎麼樣(以前遇到過超過65535個資料庫就當機的)。但是其實我們一般都忽略繫結失敗的情況。查詢 V$SQL_SHARED_CURSOR,最後的reason裡面記錄了為什麼失敗。在這個reason之前有幾十個欄位每個都是一種原因。比如這種:
。 reason是這些的彙總。也就是說使用繫結變數不一樣就是繫結變數了,還有幾十種可能失敗,失敗了還是要硬解析的。
之前沒怎麼關注過這些,可能有人會覺得不專業。其實資料庫博大精深,越學習越發現要學習的太多了,以前學習的還不夠。其實很多時候我們都是知道什麼是對的,怎麼做對就好了。這樣其實是簡單的。現在不同,是要了解稀奇古怪的錯(之所以有這些錯,是因為沒聽正確的做法,就導致了各式各樣的問題)。這次看到一個SQL在share_pool中佔據了將近2G。 你說這有天理嗎?
我一直說只有我想不到的,沒有開發做不到的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/637517/viewspace-2926837/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 研究發現英語歌曲變得越來越消極
- python 的常用庫變化還是越來越大,越來越方便的,說說常用的有哪些?Python
- C# 中的 is 真的是越來越強大,越來越語義化C#
- javaScript正變得越來越流行JavaScript
- eMarketer:無品牌變成越來越重要的品牌
- 遊戲開發是否正在變得越來越跨學科?遊戲開發
- 【日記】感覺自己越來越擺了(546 字)
- 你是如何離程式設計越來越遠的?程式設計
- Omdia:RISC架構變得越來越受歡迎架構
- Google 搜尋演算法是如何越來越懂你的?Go演算法
- 杭州現在的phper感覺越來越不好待下去PHP
- TypeScript 正在越來越重要TypeScript
- 為什麼Web前端變的越來越複雜,變得更加難學了Web前端
- 閒聊iOS越獄與前景 iOS越獄還是你的菜嗎?iOS
- 是什麼原因讓寶付感覺現在的錢越來越不經花?
- 當軟體更改的成本代價越來越低,你的產品就會越來越強!!!
- 人工智慧的影響正變得越來越難以預測人工智慧
- 益普索:歐洲交通變得越來越電氣化
- 現實:程式越來越複雜。目的:可維護。
- 獲取新聞的途徑越來越簡單是好事嗎?
- 越來越討厭爬蟲爬蟲
- photoshop2022破解版出來了,p圖越來越智慧,使用越來越簡單
- 開發人員越來越重視安全編碼
- 產品經理為什麼越來越不值錢?不懂資料,只能尷尬退場
- 為什麼現在開發一款軟體的時間越來越長?
- 如何走出情緒越來越壞的怪圈?
- 使用越來越廣泛的2FA雙因素認證,緣何越發受到推崇?
- 柯潔說,去年AlphaGo還比較接近於人,現在它越來越像圍棋上帝!Go
- Horowitz Research:隨著Z世代觀眾的成熟,電視變得越來越重要
- 現代前端工程為什麼越來越離不開 Monorepo?前端Mono
- 自從喜歡上了B站這12個UP主,我越來越覺得自己是個廢柴了!
- Voodoo越來越不“超休閒”了Odoo
- 比亞迪越來越像華為?
- 短壽魔咒下,數值卡牌遊戲越來越難了遊戲
- 為什麼前端工作越來越難找了?前端
- 大資料分析為啥越來越重要大資料
- 為什麼女性內衣越來越貴?
- 為何我們使用的手機會越來越貴