Mysql數據庫常用分庫和分表方式
1 分庫
1.1 按照功能分庫
按照功能進行分庫。常見的分成6大庫:
1 用戶類庫:用於保存了用戶的相關信息。例如:db_user,db_system,db_company等。
2 業務類庫:用於保存主要業務的信息。比如主要業務是笑話,用這個庫保存笑話業務。例如:db_joke,db_temp_joke等。
3 內存類庫:主要用Mysql的內存引擎。前台的數據從內存庫中查找,速度快。例如:heap。
4 圖片類庫:主要保存圖片的索引以及關聯。例如:db_img_index,db_img_res。
5 日志類庫:記錄點擊,刷新,登錄等日志信息。例如:db_log_click,db_log_fresh,db_log_login。
6 統計類庫:對業務的統計,比如點擊量,刷新量等等。例如db_stat。
1.2 安裝城市站分庫
如果業務遍布全國,在按照功能分庫庫,每一個城市復制一份一模一樣的庫,只是庫後綴都是城市名稱。比如db_log_click_bj,db_log_click_tj,db_log_click_sh;
2 分表
2.1 按照用戶或業務的編號分表
對與用戶或業務可以按照編號%n,進行分成n表。
例如:笑話表。
tb_joke_01,tb_joke_02,tb_joke_03,tb_joke_04........
2.2 按照日期分表
對於日志或統計類等的表。可以按照年,月,日,周分表。
例如 點擊量統計。
tb_click_stat_201601,tb_click_stat_201602,tb_click_stat_201603
3 Mysql數據庫常用架構
核心:一主多從,讀寫分離。