資料庫開發管理中的十條建議

2022-09-16 08:36:08 字數 920 閱讀 1527

因為主要管理資料庫平台,所以和公司各個部門的相關技術人員都打過不少交道,然後從日常溝通中,了解到不少技術人員對資料庫的觀念,有正確的,有錯誤的,今天就列一些常見的錯誤觀念:

1,發現鎖表嚴重情況,會立刻想到改用innodb,好像innodb的行級鎖之後,就不會表鎖了,持這種觀念的開發人員不在少數,其實他們不知道在做排序或是where條件複雜的情況下,一樣會產生表鎖。

2, 發現磁碟io過大,會立刻想到分表,(這個方向是好的),但是一問,結果是分幾千張表,認為這樣之後,磁碟io壓力就會下降,其實分表並不能解決磁碟io,結合分庫+分表,然後分擔到不同的物理機器,這樣才能真正做到拆分,降低磁碟io。

3, 大部分應用開發人員都會對錶名定義的很通俗,如user,其實這樣做不好,因為在進行抓包分析時候,這種沒有特徵的表名會導致故障排查變難。

4, 大部分應用開發人員不喜歡定時清理歷史資料,只管存,不管清,導致專案資料量達到一定程度,再跑清理程式時候會比較影響服務。

5, 有些應用開發人員缺乏對錶資料字段的控制,乙個表放100多個字段,超級恐怖。

6,還有的應用開發人員乾脆把錶定義的超級多mediutext,拿資料庫當儲存用了,而且是冷熱資料都放一起,搞得偶很無語。

7,應用開發人員經常會跑一些奇怪的join,巢狀子查詢的sql,但是卻不去explain一下到底會有多大的掃瞄集,我見過有跑到上億掃瞄集的。

8,對mysql的觸發器過於依賴,但是不考慮如果在誤操作之後的恢復操作,會產生業務邏輯的混亂。

9,很多技術開發人員一聽重要如收費相關的專案,就是想要用innodb的事務機制做保障,其實真沒必要,我管的專案中收費讀書和英超收費頻道都是用myisam的,跑了快2年了,至今沒發現有使用者要告公司收費不准的問題。

10,很多開發人員喜歡在sql語句使用now()這樣的語句,其實應該盡量讓php程式去獲得時間。因為當你通過binlog進行誤操作恢復時候,你就能體會我說的意思了。

IT工程師必看的十條建議

1 好好規劃自己的路,不要跟著感覺走!根據個人的理想決策安排,絕大部分人並不指望成為什麼院士或教授,而是希望活得滋潤一些,爽一些。那麼,就需要慎重安排自己的軌跡。從哪個行業入手,逐漸對該行業深入了解,不要頻繁跳槽,特別是不要為了一點工資而轉移陣地,從長遠看,這點錢根本不算什麼,當你對乙個行業有那麼幾...

IT工程師必看的十條建議

1 好好規劃自己的路,不要跟著感覺走!根據個人的理想決策安排,絕大部分人並不指望成為什麼院士或教授,而是希望活得滋潤一些,爽一些。那麼,就需要 慎重安排自己的軌跡。從哪個行業入手,逐漸對該行業深入了解,不要頻繁跳槽,特別是不要為了一點工資而轉移陣地,從長遠看,這點錢根本不算什麼,當你對一 個行業有那...

IT工程師必看的十條建議

1 好好規劃自己的路,不要跟著感覺走!根據個人的理想決策安排,絕大部分人並不指望成為什麼院士或教授,而是希望活得滋潤一些,爽一些。那麼,就需要慎重安排自己的軌跡。從哪個行業入手,逐漸對該行業深入了解,不要頻繁跳槽,特別是不要為了一點工資而轉移陣地,從長遠看,這點錢根本不算什麼,當你對乙個行業有那麼幾...