mysql数据库优化
mysql数据库优化
1.联合索引,列的离散度越大,越靠前。
例如:user_money用户账户表
CREATE TABLE `users_money` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uid` mediumint(8) NOT NULL COMMENT '会员ID', `total_dividend` decimal(10,2) DEFAULT '0.00' COMMENT '历史总佣金', `total_integral` decimal(10,2) DEFAULT '0.00' COMMENT '历史总积分,此值只用于计算用户等级', `total_coin` int(10) NOT NULL DEFAULT '0' COMMENT '历史总排单币', `balance_money` decimal(10,2) DEFAULT '0.00' COMMENT '余额(可提金额)', `wait_money` decimal(10,2) DEFAULT '0.00' COMMENT '待到账佣金', `use_integral` decimal(10,2) DEFAULT '0.00' COMMENT '可用积分', `bean_value` decimal(10,2) DEFAULT '0.00' COMMENT '旅游币', `coin` int(10) DEFAULT '0' COMMENT '排单币(服务金)', `update_time` int(10) DEFAULT '0' COMMENT '最近更新时间', PRIMARY KEY (`id`), KEY(`id`,`uid`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='会员帐户表';
查询离散度:select count(DISTINCT id),COUNT(DISTINCT uid) from zsh_member_card;
2.索引维护:
3.数据结构优化