码迷,mamicode.com
首页 > 数据库 > 详细

数据库水平分表

时间:2020-07-14 13:18:50      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:索引   效率   concat   date   rom   set   span   arc   就会   

1. 前言:但数据库数据到达千万级别的时候,查询如果不按索引查就会非常慢,于是这里打算利用水平分表来优化一下查询,提高效率

2. 分表:取我当前表的某一列的前两个数字进行二级分表,将千万数据化分成十万。

-- 首先执行循环建表:
create procedure sum1(a int) 
begin
    declare sum int default 0;  -- default 是指定该变量的默认值
    declare i int default 0; -- 循环下标
while i<=a DO -- 循环开始
    set i=i+1;
        set @sql_create_table = concat(
    ‘CREATE TABLE IF NOT EXISTS tbCid_0‘, i,
    "(
          `keyCid` varchar(32)     NOT NULL,
  `mcc` varchar(3)     NOT NULL,
  `mnc` varchar(2)     NOT NULL,
  `lac` varchar(12)     NOT NULL,
  `cid` varchar(12)     NOT NULL,
  `country` varchar(32)     NOT NULL,
  `province` varchar(32)     NULL DEFAULT NULL,
  `city` varchar(32)     NULL DEFAULT NULL,
  `district` varchar(32)     NULL DEFAULT NULL,
  `road` varchar(64)     NULL DEFAULT NULL,
  `street` varchar(64)     NULL DEFAULT NULL,
  `pos` varchar(64)     NULL DEFAULT NULL,
  `detailpos` varchar(256)     NULL DEFAULT NULL,
  `longitude` varchar(32)     NULL DEFAULT NULL,
  `latitude` varchar(32)     NULL DEFAULT NULL,
  `idxAreaId` varchar(128)     NULL DEFAULT NULL,
  `remark` varchar(256)     NULL DEFAULT NULL,
  `mdfTm` datetime(0) NOT NULL,
  `mdfBy` varchar(45)     NOT NULL,
  `crtTm` datetime(0) NOT NULL,
  `crtBy` varchar(45)     NOT NULL,
  `idxOwnerId` varchar(128)     NULL DEFAULT NULL,
  PRIMARY KEY (`keyCid`) USING BTREE,
  INDEX `idxAreaId`(`idxAreaId`) USING BTREE,
  INDEX `idxOwnerId`(`idxOwnerId`) USING BTREE
    )ENGINE=InnoDB DEFAULT CHARSET=utf8;");
    PREPARE sql_create_table FROM @sql_create_table;   
    EXECUTE sql_create_table; 

end while; -- 循环结束
--  可加循环结束后操作语句
end


-- 第二步执行
-- 执行存储过程
call sum1(100);

-- 第三步执行
-- 删除存储过程
drop procedure if exists sum1;

3. 数据迁移 

4. 查询修改

-- 未完待续

 

数据库水平分表

标签:索引   效率   concat   date   rom   set   span   arc   就会   

原文地址:https://www.cnblogs.com/dztHome/p/13298289.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!