資料庫設計之維護優化

2021-08-10 11:16:57 字數 1448 閱讀 4644

維護和優化要做什麼

1:維護資料字典

2:維護索引

3:維護表結構

4:在適當的時候對錶進行水平拆分或垂直拆分

一:如何維護資料字典

1:使用第三方工具對資料字典進行維護

2:利用資料庫本身的備註欄位來維護資料字典

以mysql為例:

create

table customer(

cust_id int auto_increment not

null comment '自增id',

cust_name varchar(10) not nunll comment '客戶姓名',

primary

key(cust_id)

)comment '客戶表'

3:匯出資料字典

select

a.table_name,b.table_comment,a.column_name,

a.column_type,a.column_commentfrom

information_schema.columns a joid information_schema.

tables b on a.table_schema=b.table_schema and

a.table_name=b.table_name

where a.table_name='customer'

二:資料庫如何維護索引如何選擇合適的列建立索引?

1:出現在where從句,group by從句,order by從句的列

2:可選擇性高的列要放在索引的前面

3:索引中不要包括太長的資料型別

注意事項:

1:索引並不是越多越好,過多的索引不但會降低寫效率,而且會降低讀的效率

2:定期維護索引碎片

3:在sql語句中不要使用強制索引關鍵字

三:如何維護表結構

資料庫中適合的操作

1:批量操作vs逐條操作

2:禁止使用select *這樣的查詢

3:控制使用使用者自定義函式

4:不要使用資料庫中的全文索引

表的垂直拆分和水平拆分

表的垂直拆分:為了控制表的寬度可以進行表的垂直拆分。

1:經常一起查詢的列放在一起

2:text,blob等大字段拆分出到附加表中

表的水平拆分:為了控制表的大小可以進行表的水平拆分

水平拆分常用方法之一,主鍵的hash key,取模

資料庫設計(三)之資料庫維護與優化

1.使用第三方工具對資料字典進行維護 2.利用資料庫本身的製備柱字段來維護資料字典 如何選擇合適的列建立索引 1.出現在where從句,group by從句,oreder by從句中的列 2.可選擇性高的列要放到索引的前面 3.索引中不要包括太長的資料型別。只使用前16個位元組進行索引,或者太大的字...

資料庫優化 資料庫設計優化

一 索引優化 1.首先索引不是越多越好,要視情況而定。因為索引會降低insert和update的效率 insert和update有時可能會重建索引。2.乙個表的索參數量最好不要超過6個,擇優而建。3.專案上線後,根據使用者的查詢條件字段稍微調整資料庫中的字段索引。二 分表 1.縱切 根據表字段來且分...

mysql資料庫優化之索引的維護和優化

這裡是乙個工具,即pt duplicate key checker工具 用來檢查重複及冗餘的索引 用法如下 pt duplicate key checker uroot p密碼 h127.0.0.1 資料庫結構優化 那麼為什麼需要使用not null 定義欄位呢?因為innodb引擎的資料表,在遇到...