同事写的代码。
记录大约近5万条。增到16000左右(有时多有时少)会出现连接失败,然后要大概十几分钟才能释放资源。
在一台WIN7笔记本上,每3000条休息5分钟,OK,但在一台台式机(XP)上就不行,但两台机的PHP+MYSQL环境是一样的。出错内容:
A link to the server could not be established in 文件名 on line 24
Can't connect to MySQL server on 'localhost'(10055)代码:
$nr="select qh,qj,hps,tt_qsh,tt_jsh,yd_qsh,yd_jsh from td_hd_temp ";
  $qz = sql_b($nr); //将表td_temp的内容读取至数组$qz中$sl="select count(*) from td_hd_temp ";
  $sl = sql_b($sl); //将表td_temp的记录数取至数组$sl中

                   $hj=$sl[0][0];// 表td_temp的记录总数
   
    for ($k=0;$k<$hj;$k++)
                   {
                   $qh =$qz[$k][0];  //以下为将表td_temp的各字段内容赋予各变量
                   $qj =$qz[$k][1];
                   $hps=$qz[$k][2];
                   $tt_qsh=$qz[$k][3];
                   $tt_jsh=$qz[$k][4];
                   
                   $yd_qsh=$qz[$k][5];
                   $yd_jsh=$qz[$k][6];
                  $yd_qd=substr($yd_qsh,0,15) ;
                   $yd_hd=substr($yd_qsh,15,20) ;
                   
                   
for ($i=0;$i<$hps;$i++)//以下为将各变量写入到表td_hd_xf的中


                   {
                   
                   $tthm=$tt_qsh+$i;
                   
                   $yy=$yd_hd+$i;
                   $ydhm=$yd_qd.$yy;
            
    
               $sql="INSERT INTO `td_hd_xf` (`qh` ,`qj` ,`tthm` ,`ydhm` )VALUES (
'$qh',' $qj',' $tthm',' $ydhm'
);
" ;
$nn=$nn+1;//计数器
echo "----".$nn;
if($nn==10000) //处理数据超过10000秒后暂停300秒
  {
  sleep(300); 
  $nn=0;
  }
$js=sql_a($sql);    
                  }

           
                   }