日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Mysql的垂直分表-新建

發布時間:2024/9/19 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mysql的垂直分表-新建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

說明

垂直分割:就是將一個表按照字段來分,每張表保證有相同的主鍵就好。一般來說,將常用字段和大字段分表來放。? ??

優勢:比沒有分表來說,提高了查詢速度,降低了查詢結果所用內存;

劣勢:沒有解決大量記錄的問題,對于單表來說隨著記錄增多,性能還是下降很快;

案例

?

思路

硬分表,把常用字段建立一張,不常用的建立一張

案例

現在有個user表:如下,有很多字段,現在分成兩個表,一個user1用了存放用戶主要的屬性字段,另一個表user2,用了存放各種時間相關的字段表user2中通過uid來關聯user1表

mysql> desc user; +----------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------------+---------------------+------+-----+---------+----------------+ | id | int(10) unsigned | NO | PRI | NULL | auto_increment | | group_id | int(10) unsigned | NO | | 0 | | | username | varchar(32) | NO | MUL | | | | nickname | varchar(50) | NO | MUL | | | | password | varchar(32) | NO | | | | | salt | varchar(30) | NO | | | | | email | varchar(100) | NO | MUL | | | | mobile | varchar(11) | NO | MUL | | | | avatar | varchar(255) | NO | | | | | birthday | date | NO | | NULL | | | prevtime | int(10) unsigned | NO | | 0 | | | logintime | int(10) unsigned | NO | | 0 | | | loginip | varchar(50) | NO | | | | | loginfailure | tinyint(1) unsigned | NO | | 0 | | | joinip | varchar(50) | NO | | | | | jointime | int(10) unsigned | NO | | 0 | | | createtime | int(10) unsigned | NO | | 0 | | | updatetime | int(10) unsigned | NO | | 0 | |mysql> desc user1; +----------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------------+---------------------+------+-----+---------+----------------+ | id | int(10) unsigned | NO | PRI | NULL | auto_increment | | group_id | int(10) unsigned | NO | | 0 | | | username | varchar(32) | NO | MUL | | | | nickname | varchar(50) | NO | MUL | | | | password | varchar(32) | NO | | | | | salt | varchar(30) | NO | | | | | email | varchar(100) | NO | MUL | | | | mobile | varchar(11) | NO | MUL | | | | avatar | varchar(255) | NO | | | | | birthday | date | NO | | NULL | |mysql> desc user2; +----------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------------+---------------------+------+-----+---------+----------------+ | uid | int(10) unsigned | NO | | | | prevtime | int(10) unsigned | NO | | 0 | | | logintime | int(10) unsigned | NO | | 0 | | | loginip | varchar(50) | NO | | | | | loginfailure | tinyint(1) unsigned | NO | | 0 | | | joinip | varchar(50) | NO | | | | | jointime | int(10) unsigned | NO | | 0 | | | createtime | int(10) unsigned | NO | | 0 | | | updatetime | int(10) unsigned | NO | | 0 | | ————————————————

?

總結

以上是生活随笔為你收集整理的Mysql的垂直分表-新建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。