欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【1亿条数据在PHP中实现Mysql数据库分表100张】,下面是详细的分享!
1亿条数据在PHP中实现Mysql数据库分表100张
当数据量猛增的时候,大家都会选择库表散列等等方式去优化数据读写速度。笔者做了一个简单的尝试,1亿条数据,分100张表。具体实现过程如下。
首先创建100张表:
|
英文代码 $i=0; |
下面说一下我的分表规则,full_code作为主键,我们对full_code做hash
函数如下:
|
英文代码 $table_name=get_hash_table('code',$full_code); function get_hash_table($table,$code,$s=100){ |
这样插入数据前通过get_hash_table获取数据存放的表名。
最后我们使用merge存储引擎来实现一张完整的code表
|
CREATE TABLE IF NOT EXISTS `code` ( |
这样我们通过select * from code就可以得到所有的full_code数据了。
以上所分享的是关于1亿条数据在PHP中实现Mysql数据库分表100张,下面是编辑为你推荐的有价值的用户互动:
相关问题:php读取mysql数据库表的前20条记录,然后分两行显...
答:$result = mysql_query('select * from mytable limit 0, 20');$i = 0;while ($rs = mysql_fetch_array($result)){ echo $rs['myfield'].' '; $i++; if ($i == 10) { echo ''; }} >>详细
相关问题:求助:在php中,怎么才能知道数据库(mysql)的表...
答:如果是客户端连接数据库的话,一条语句OK。select count(*) from tablename; >>详细
相关问题:php 查询mysql数据库中 某个表里面的某个值
答:$re = mysql_query(select * from qianwe_dj where CD_Url='".$name."');if($row = mysql_fetch_array($re)) { echo "存在"; }$name是参数,既你要查的歌名 >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
