欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > MySQL數據庫使用規范總結

MySQL數據庫使用規范總結

熱門標簽:許昌外呼增值業務線路 宜賓全自動外呼系統廠家 申請400電話電話價格 地圖標注客戶付款 石家莊400電話辦理公司 新鄉智能外呼系統好處 廣東400企業電話申請流程 咸陽防封電銷卡 臨沂做地圖標注

導讀:

關于MySQL數據庫規范,相信大家多少看過一些文檔。本篇文章給大家詳細分類總結了數據庫相關規范,從庫表命名設計規范講起,到索引設計規范,后面又給出SQL編寫方面的建議。相信這些規范適用于大多數公司,也希望大家都能按照規范來使用我們的數據庫,這樣我們的數據庫才能發揮出更高的性能。

關于庫:

1.【強制】庫的名稱必須控制在32個字符以內,英文一律小寫。

2.【強制】庫的名稱格式:業務系統名稱_子系統名。

3.【強制】庫名只能使用英文字母,數字,下劃線,并以英文字母開頭。

4.【強制】創建數據庫時必須顯式指定字符集,并且字符集只能是utf8或者utf8mb4。創建數據庫SQL舉例:Create database db1 default character set utf8;

5.【建議】臨時庫、表名以tmp_ 為前綴,并以日期為后綴,備份庫、表以 bak_ 為前綴,并以日期為后綴。

關于表

1.【強制】表和列的名稱必須控制在32個字符以內,表名只能使用字母、數字和下劃線,一律小寫。

2.【強制】表名要求模塊名強相關,同一模塊使用的表名盡量使用統一前綴。

3.【強制】創建表時必須顯式指定字符集為utf8或utf8mb4。

4.【強制】列名盡量不用關鍵字(如type,order等)。

5.【強制】創建表時必須顯式指定表存儲引擎類型,如無特殊需求,一律為InnoDB。

6.【強制】建表必須有comment。

7.【強制】對于超過100W行的大表進行alter table,必須經過DBA審核,并在業務低峰期執行,多個alter需整合在一起。

因為alter table會產生表鎖,期間阻塞對于該表的所有寫入,對于業務可能會產生極大影響。

8.【建議】建表時關于主鍵:表必須有主鍵

(1)強制要求主鍵為id,類型為int或bigint,且為auto_increment 建議使用unsigned無符號型。

(2)標識表里每一行主體的字段不要設為主鍵,建議設為其他字段如user_id,order_id等,并建立unique key索引。

因為如果設為主鍵且主鍵值為隨機插入,則會導致innodb內部page分裂和大量隨機I/O,性能下降。

9.【建議】核心表(如用戶表)必須有行數據的創建時間字段create_time和最后更新時間字段update_time,便于查問題。

10.【建議】表中所有字段盡量都是NOT NULL屬性,業務可以根據需要定義DEFAULT值。

因為使用NULL值會存在每一行都會占用額外存儲空間、數據遷移容易出錯、聚合函數計算結果偏差等問題。

11.【建議】中間表用于保留中間結果集,名稱必須以tmp_ 開頭。備份表用于備份或抓取源表快照,名稱必須以bak_開頭。中間表和備份表定期清理。

12.【示范】一個較為規范的建表語句:

CREATE TABLE user_info ( `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '自增主鍵', `user_id` bigint(11) NOT NULL COMMENT '用戶id', `username` varchar(45) NOT NULL COMMENT '真實姓名', `email` varchar(30) NOT NULL COMMENT '用戶郵箱', `nickname` varchar(45) NOT NULL COMMENT '昵稱', `birthday` date NOT NULL COMMENT '生日', `sex` tinyint(4) DEFAULT '0' COMMENT '性別', `short_introduce` varchar(150) DEFAULT NULL COMMENT '一句話介紹自己,最多50個漢字', `user_resume` varchar(300) NOT NULL COMMENT '用戶提交的簡歷存放地址', `user_register_ip` int NOT NULL COMMENT '用戶注冊時的源ip', `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改時間', `user_review_status` tinyint NOT NULL COMMENT '用戶資料審核狀態,1為通過,2為審核中,3為未通過,4為還未提交審核', PRIMARY KEY (`id`), UNIQUE KEY `uniq_user_id` (`user_id`), KEY `idx_username`(`username`), KEY `idx_create_time_status`(`create_time`,`user_review_status`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='網站用戶基本信息'

關于索引

1.【強制】InnoDB表必須主鍵為id int/bigint auto_increment,且主鍵值禁止被更新。

2.【強制】InnoDB和MyISAM存儲引擎表,索引類型必須為BTREE。

3.【建議】主鍵的名稱以 pk_ 開頭,唯一鍵以 uniq_ 或  uk_  開頭,普通索引以 idx_ 開頭,一律使用小寫格式,以字段的名稱或縮寫作為后綴。

4.【建議】單個表上的索引個數不能超過8個。

5.【建議】在建立索引時,多考慮建立聯合索引,并把區分度最高的字段放在最前面。如列userid的區分度可由select count(distinct userid)計算出來。

6.【建議】在多表join的SQL里,保證被驅動表的連接列上有索引,這樣join執行效率最高。

7.【建議】建表或加索引時,保證表里互相不存在冗余索引。
對于MySQL來說,如果表里已經存在key(a,b),則key(a)為冗余索引,需要刪除。

SQL編寫

1.【強制】程序端SELECT語句必須指定具體字段名稱,禁止寫成 *。

2.【強制】程序端insert語句指定具體字段名稱,不要寫成insert into t1 values(…)。

3.【強制】除靜態表或小表(100行以內),DML語句必須有where條件,且使用索引查找。

4.【強制】where條件里等號左右字段類型必須一致,否則無法利用索引。

5.【強制】WHERE 子句中禁止只使用全模糊的LIKE條件進行查找,必須有其他等值或范圍查詢條件,否則無法利用索引。

6.【強制】索引列不要使用函數或表達式,否則無法利用索引。如where length(name)='Admin'或where user_id+2=10023。

7.【建議】insert into…values(XX),(XX),(XX).. 這里XX的值不要超過5000個。
值過多雖然上線很很快,但會引起主從同步延遲。

8.【建議】SELECT語句不要使用UNION,推薦使用UNION ALL,并且UNION子句個數限制在5個以內。
因為union all不需要去重,節省數據庫資源,提高性能。

9.【強制】禁止跨db的join語句。

10.【建議】不建議使用子查詢,建議將子查詢SQL拆開結合程序多次查詢,或使用join來代替子查詢。

11.【建議】線上環境,多表join不要超過5個表。

12.【建議】在多表join中,盡量選取結果集較小的表作為驅動表,來join其他表。

13.【建議】批量操作數據時,需要控制事務處理間隔時間,進行必要的sleep。

14.【建議】事務里包含SQL不超過5個
因為過長的事務會導致鎖數據較久,MySQL內部緩存、連接消耗過多等問題。

15.【建議】事務里更新語句盡量基于主鍵或unique key,如update … where id=XX;
否則會產生間隙鎖,內部擴大鎖定范圍,導致系統性能下降,產生死鎖。

16.【建議】減少使用order by,和業務溝通能不排序就不排序,或將排序放到程序端去做。Order by、group by、distinct這些語句較為耗費CPU,數據庫的CPU資源是極其寶貴的。

17.【建議】order by、group by、distinct這些SQL盡量利用索引直接檢索出排序好的數據。如where a=1 order by b可以利用key(a,b)。

18.【建議】包含了order by、group by、distinct這些查詢的語句,where條件過濾出來的結果集請保持在1000行以內,否則SQL會很慢。

以上就是MySQL數據庫使用規范的詳細內容,更多關于MySQL使用規范的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • MySQL 使用規范總結
  • 超詳細MySQL使用規范分享
  • 老鳥帶你開發專業規范的MySQL啟動腳本
  • MySQL開發規范與使用技巧總結
  • mysql數據庫開發規范【推薦】
  • MySQL數據庫命名規范及約定
  • Mysql建表與索引使用規范詳解
  • MYSQL 數據庫命名與設計規范
  • 專業級的MySQL開發設計規范及SQL編寫規范

標簽:北京 合肥 鎮江 鷹潭 臺灣 日照 阜新 貴州

巨人網絡通訊聲明:本文標題《MySQL數據庫使用規范總結》,本文關鍵詞  MySQL,數據庫,使用,規范,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL數據庫使用規范總結》相關的同類信息!
  • 本頁收集關于MySQL數據庫使用規范總結的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    亚洲欧美卡通动漫| 国产精品视频一二三| 一区二区三区四区不卡在线| 国模冰冰炮一区二区| 亚洲色偷偷色噜噜狠狠99网| 99re亚洲国产精品| 日本一级特级毛片视频| 国产日本欧美一区二区| 狠狠色综合色综合网络| 亚洲区自拍偷拍| 精品成人免费观看| 麻豆久久一区二区| 波多野吉衣中文字幕| 精品国产精品一区二区夜夜嗨| 日韩国产精品久久久| 中文字幕日韩三级片| 欧美一二三在线| 日本免费在线视频不卡一不卡二| 日韩av无码一区二区三区不卡| 欧美日韩第一区日日骚| 午夜电影网一区| 久久人妻少妇嫩草av无码专区 | 成人免费av在线| avove在线播放| 樱花草国产18久久久久| 99国产精品免费视频| 欧美老女人在线| 日韩国产欧美视频| 9.1成人看片免费版| 亚洲精品一区在线观看| 国产一区三区三区| 特一级黄色录像| 一区二区三区中文在线观看| 久久久久亚洲av片无码v| 欧美剧情电影在线观看完整版免费励志电影 | 老牛影视av老牛影视av| 精品欧美一区二区在线观看| 国模娜娜一区二区三区| 欧美偷拍第一页| 亚洲电影第三页| 大黑人交xxx极品hd| 久久久亚洲精品石原莉奈| 国产一区二区在线影院| 色综合中文综合网| 成人午夜视频在线观看| 欧美最猛黑人xxxxx猛交| 亚洲动漫第一页| 精品人伦一区二区| 国产精品免费av| 国产69视频在线观看| 亚洲精品一区二区三区福利| 高清免费成人av| 欧美高清精品3d| 久久99久国产精品黄毛片色诱| 成人信息集中地| 一区二区免费看| 美女100%无挡| 国产精品美女久久久久aⅴ| 伊人久久久久久久久| 精品福利在线导航| 不卡av电影在线播放| 国产一区二区精彩视频| 亚洲午夜电影在线观看| 欧美成人另类视频| 亚洲乱码国产乱码精品精可以看 | 成人午夜av在线| 欧美日韩第一区日日骚| 国产一区91精品张津瑜| 欧美性猛交xxxx黑人交| 精品一区二区免费| 欧美图区在线视频| 黄色精品一二区| 欧美日韩视频专区在线播放| 国产在线一区观看| 欧美人妇做爰xxxⅹ性高电影 | 麻豆成人av在线| 日本高清免费不卡视频| 蜜臀av一级做a爰片久久| 色综合久久中文综合久久97| 轻轻草成人在线| 欧美综合一区二区| 国产呦萝稀缺另类资源| 欧美老女人在线| av一区二区三区在线| 精品电影一区二区三区| 性高潮久久久久久| 中文字幕一区二区在线播放| 国产精品无码久久久久久| 亚洲乱码国产乱码精品精的特点| 少妇av片在线观看| 日韩精品91亚洲二区在线观看| 亚洲成人生活片| 韩国女主播一区| 91麻豆精品国产自产在线观看一区| 成人午夜电影久久影院| 久久久久久久久久久电影| 97精品人妻一区二区三区蜜桃| 中文字幕日韩一区| 国产jizz18女人高潮| 免费高清在线视频一区·| 欧美亚洲综合另类| 岛国精品在线观看| 久久久亚洲精品石原莉奈| 精品人妻一区二区三区香蕉| 亚洲国产一区在线观看| 深夜福利影院在线观看| 国产乱人伦偷精品视频不卡| 日韩美女一区二区三区| 少妇搡bbbb搡bbb搡打电话| 亚洲免费观看高清完整版在线观看 | 国产福利一区二区三区视频| 日韩欧美成人激情| 国产黄色三级网站| 亚洲成人在线网站| 欧美日韩综合色| 男生和女生一起差差差视频| 亚洲欧美激情小说另类| 中文字幕人妻一区二| 国产成人精品免费网站| 久久久99精品免费观看不卡| 欧美 日韩 国产 成人 在线观看| 石原莉奈一区二区三区在线观看| 欧美日韩国产中文| 国产精品日日摸夜夜爽| 一区二区三区精品在线| 在线观看国产日韩| 少妇性l交大片7724com| 亚洲激情在线播放| 在线观看免费亚洲| 日本wwwxx| 亚洲大片精品永久免费| 欧美乱妇15p| 精品熟女一区二区三区| 午夜精品久久久久影视| 欧美一区二区日韩一区二区| 91丝袜在线观看| 日本亚洲视频在线| 精品国产免费一区二区三区四区 | 日日操免费视频| 国产精品亚洲а∨天堂免在线| 久久精品一区四区| 国产成人免费在线观看视频| 国产成人av在线影院| 中文久久乱码一区二区| 亚洲熟女www一区二区三区| 粉嫩绯色av一区二区在线观看| 中文一区二区在线观看| 我家有个日本女人| 在线观看免费看片| 亚洲成av人影院在线观看网| 欧美一级夜夜爽| 青青草福利视频| 国产一区二区网址| 国产精品免费丝袜| 在线观看www91| 国产美女视频免费观看下载软件| 美女国产一区二区| 国产日韩欧美a| 日本精品一级二级| 催眠调教后宫乱淫校园| 久久丁香综合五月国产三级网站| 国产欧美一区二区三区在线看蜜臀 | 国产高潮呻吟久久| 国产91精品一区二区麻豆网站| 亚洲免费观看在线观看| 欧美一区二区三区在线| 91精品久久久久久久久久久久| 成人免费看的视频| 亚洲国产精品嫩草影院| 精品99一区二区三区| 欧美老熟妇一区二区三区| 亚洲精品激情视频| 国精产品一区一区三区mba视频| 亚洲婷婷在线视频| 欧美一区永久视频免费观看| 亚洲天堂精品一区| 中文字幕人妻无码系列第三区| 免费日本视频一区| 中文字幕一区在线| 日韩一区二区精品| 婷婷久久综合网| 日本一区二区在线免费观看| 国产精品亚洲视频| 亚洲国产精品视频| 欧美激情一区三区| 91超碰这里只有精品国产| 蜜桃av乱码一区二区三区| 免费观看日韩av| 久久奇米777| 91黄色激情网站| 中文字幕狠狠干| thepron国产精品| 丝瓜av网站精品一区二区| 久久人人超碰精品| 色婷婷精品大在线视频| theav精尽人亡av| 成熟亚洲日本毛茸茸凸凹| 日韩电影免费一区| 国产精品久久久久久久蜜臀| 欧美精品精品一区|