喜悦国际村 
» 游客:  注册 | 登录 | 搜索 | 统计 | 帮助

RSS 订阅当前论坛  

喜悦证交所已经关闭

上一主题 下一主题
 27  1/3  1  2  3  > 
     
标题: 今天用mysql做了个试验  
 
simonxzq (simonxzq)
高级会员
Rank: 4
高级会员



UID 14971
精华 1
积分 574
帖子 537
金钱 564 喜悦币
威望 10
人脉 0
阅读权限 50
注册 2002-6-25
来自 江门
状态 离线
[广告]: q m
今天用mysql做了个试验

程序和数据如下:
set_time_limit(0);
$connect=mysql_connect("localhost","xxxx","xxxx");
mysql_select_db("db_name");
$sql="insert into co values('','21ÊÀ¼Í','http://www.21cn.com','0','|¼òÌåÖÐÎÄ','5',' 441/125 ','395/295','371/323','355/337','21ÊÀ¼Í','12','2003-06-11/17:06:32','2','c4ca4238a0b923820dcc509a6f75849b/i1055322438.jpg','c4ca4238a0b923820dcc509a6f75849b/s1055322438.jpg','µÇ¼°ïÖúÒôÏñ³¬ÊйÉÊÐ888»ãÊÐͨÐÂÎ÷ÓμÇÐÂÎŲƾ­ÎĽÌ?..','c4ca4238a0b923820dcc509a6f75849b/l1055322438.jpg','c4ca4238a0b923820dcc509a6f75849b/t1055322438.jpg','simonxzq','4');";
print(date("H:i:s")."-".microtime());

for($i=0;$i<100000;$i++){
mysql_query($sql,$connect);
flush();
}
mysql_close($connect);
print("<br>".date("H:i:s")."-".microtime());

插入10万条记录
结果花了1:13,然后我把它清空后,试100万,程序不知怎么搞的,老是不能完全执行完毕(EDITPLUS和IE都是那样),改为50万后,发现花的时间差不多正好是5倍,但如果在中间SELECT两条不连续的记录却花了20秒(之前在PHPMYADMIN里把total里的两个值改为8和9)
select id from co where total='9' or total='8';
2 rows in set (20.07 sec)

所以我想问下,如何可以提高数据库的查询效率??
或在建表时有什么可以提高效率的方法??我的表结构如下:
CREATE TABLE `co` (
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
`webname` TEXT NOT NULL ,
`weburl` TEXT NOT NULL ,
`webbody` TEXT NOT NULL ,
`language` VARCHAR( 40 ) NOT NULL ,
`speed` VARCHAR( 4 ) NOT NULL ,
`design` VARCHAR( 10 ) NOT NULL ,
`bw` VARCHAR( 10 ) NOT NULL ,
`technique` VARCHAR( 10 ) NOT NULL ,
`ct` VARCHAR( 10 ) NOT NULL ,
`stat` TEXT NOT NULL ,
`click` VARCHAR( 10 ) NOT NULL ,
`update` VARCHAR( 10 ) NOT NULL ,
`total` VARCHAR( 10 ) NOT NULL ,
`bigimage` TEXT NOT NULL ,
`smallimage` TEXT NOT NULL ,
`absorb` LONGTEXT NOT NULL ,
`lnsideimage` TEXT NOT NULL ,
`tinyimage` TEXT NOT NULL ,
`userid` VARCHAR( 16 ) NOT NULL ,
`class` VARCHAR( 10 ) NOT NULL ,
PRIMARY KEY ( `id` )
);
2003-8-3 06:12 PM#1
查看资料  发短消息  顶部
 
xltxlm (xltxlm)
金牌会员
Rank: 6Rank: 6
版主



UID 19902
精华 3
积分 1090
帖子 3571
金钱 1060 喜悦币
威望 30
人脉 0
阅读权限 70
注册 2003-4-26
状态 离线
[推荐阅读] 对于我们窄带用户,实在是太慢了!!!
老是不能完全执行完毕

php超时
2003-8-3 06:17 PM#2
查看资料  发短消息  顶部
 
KnightE (KnightE)
版主
Rank: 7Rank: 7Rank: 7
版主



UID 15228
精华 3
积分 95
帖子 3032
金钱 65 喜悦币
威望 30
人脉 0
阅读权限 100
注册 2002-7-13
来自 上海
状态 离线
[推荐阅读] 数据库备份啊!
有意思的测试~
昨天看到xiaocon的测试了。。。

希望大家探讨探讨,能总结出一些思路:)
2003-8-3 06:17 PM#3
查看资料  访问主页  Blog  发短消息  顶部
 
simonxzq (simonxzq)
高级会员
Rank: 4
高级会员



UID 14971
精华 1
积分 574
帖子 537
金钱 564 喜悦币
威望 10
人脉 0
阅读权限 50
注册 2002-6-25
来自 江门
状态 离线
[推荐阅读] image gallery和用phpbb写过程序


QUOTE:
最初由 xltxlm 发布
[B]老是不能完全执行完毕

php超时 [/B]
呵呵。。你怎么好像24小时都在的呀??

不会的。。。我已经用了set_time_limit(0);
除 了显示一开始的时间外,就没有任何显示了。。
我之前还在query()后加了个mysql_error();都是没有任何显示,证明没有任何的错误或警告。。。。
2003-8-3 06:21 PM#4
查看资料  发短消息  顶部
 
simonxzq (simonxzq)
高级会员
Rank: 4
高级会员



UID 14971
精华 1
积分 574
帖子 537
金钱 564 喜悦币
威望 10
人脉 0
阅读权限 50
注册 2002-6-25
来自 江门
状态 离线
[推荐阅读] image gallery和用phpbb写过程序


QUOTE:
最初由 KnightE 发布
[B]有意思的测试~
昨天看到xiaocon的测试了。。。

希望大家探讨探讨,能总结出一些思路:) [/B]
有没有结果可以看??有的话就把结果帖出来
2003-8-3 06:22 PM#5
查看资料  发短消息  顶部
 
xltxlm (xltxlm)
金牌会员
Rank: 6Rank: 6
版主



UID 19902
精华 3
积分 1090
帖子 3571
金钱 1060 喜悦币
威望 30
人脉 0
阅读权限 70
注册 2003-4-26
状态 离线
[推荐阅读] 一个页面打印问题
哎,刚才一直掉线:flaming:
我的测试程序:
我插入10万条数据,结果如图,但插入100万条数据时也是没法完成。WHY?
统计一下就知道,1万条数据花了我6兆,10万花了60兆,那100万,faint。所以你知道为什么完成不了把,况且你的数据比我大得多。

<?php
list($start_usec$start_sec) = explode(" ",microtime());
$host="127.0.0.1";
$user="root";
$password="";
$data="x";
$link =@mysql_pconnect("$host""$user""$password") or die("无法连接MYSQL: 错误原因:<br> " mysql_error());
    @
mysql_select_db("$data");
set_time_limit(0); 

for(
$i=0$i<100000$i++) {

$sql="insert into `mail` values
(
'第一条数据第一条数据第一条数据第一条数据第一条数据第一条数据第一条数据第一条数据第一条数据第一条数据第一条数据第一条数据第一条数据',
'第二条数据第二条数据第二条数据第二条数据第二条数据第二条数据第二条数据第二条数据第二条数据第二条数据第二条数据第二条数据第二条数据',
'第三条数据第三条数据第三条数据第三条数据第三条数据第三条数据第三条数据第三条数据第三条数据第三条数据第三条数据第三条数据第三条数据',
'第四条数据第四条数据第四条数据第四条数据第四条数据第四条数据第四条数据第四条数据第四条数据第四条数据第四条数据第四条数据第四条数据',
'$i'
)"
;
mysql_query($sql);
flush();
}
?>

<?php
list($end_usec$end_sec) = explode(" ",microtime());
$last=$end_sec+$end_usec-$start_sec-$start_usec;
printf ("总共插入 $i 条数据<br><font size=2 color=#739900>页面执行时间: %f 秒",$last);
?>
2003-8-3 07:15 PM#6
查看资料  发短消息  顶部
 
simonxzq (simonxzq)
高级会员
Rank: 4
高级会员



UID 14971
精华 1
积分 574
帖子 537
金钱 564 喜悦币
威望 10
人脉 0
阅读权限 50
注册 2002-6-25
来自 江门
状态 离线
[推荐阅读] 那个下雨天你记得嘛
你花的空间大小指的是什么空间的大小??数据表??如果是的话,我加满100万条后的数据表大少为266M,但这有什么关系??如果你说 的是CHECH,我每次都把它清空的,所以不会满的。。。那你的原因就不成立了。
2003-8-3 08:26 PM#7
查看资料  发短消息  顶部
 
xltxlm (xltxlm)
金牌会员
Rank: 6Rank: 6
版主



UID 19902
精华 3
积分 1090
帖子 3571
金钱 1060 喜悦币
威望 30
人脉 0
阅读权限 70
注册 2003-4-26
状态 离线
[推荐阅读] 219.138.19.25 这是哪里的?
我是说硬盘已经满啦
2003-8-3 08:28 PM#8
查看资料  发短消息  顶部
 
simonxzq (simonxzq)
高级会员
Rank: 4
高级会员



UID 14971
精华 1
积分 574
帖子 537
金钱 564 喜悦币
威望 10
人脉 0
阅读权限 50
注册 2002-6-25
来自 江门
状态 离线
[推荐阅读] Nba最大!
我那个区 还有2G多,总不会。。。
2003-8-3 08:39 PM#9
查看资料  发短消息  顶部
 
xltxlm (xltxlm)
金牌会员
Rank: 6Rank: 6
版主



UID 19902
精华 3
积分 1090
帖子 3571
金钱 1060 喜悦币
威望 30
人脉 0
阅读权限 70
注册 2003-4-26
状态 离线
[推荐阅读] 靠,才学一天asp就把php搞的有点莫名其妙了。
运行时,顺便看看你的硬盘容量。。
2003-8-3 08:45 PM#10
查看资料  发短消息  顶部
 27  1/3  1  2  3  > 
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题 | 开通个人空间  


 




Powered by Discuz! 6.1.0  © 2001-2010 Comsenz Inc.
Processed in 0.028488 second(s), 6 queries

(冀ICP备05009913号) 管理员:sadly 邮箱/MSN: sadly@phpx.com QQ:824008(长隐) 清除 Cookies - - Archiver - WAP