日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql批量写入100万数据_Mysql数据库实践操作之————批量插入数据(100万级别的数据)-阿里云开发者社区...

發布時間:2025/3/8 数据库 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql批量写入100万数据_Mysql数据库实践操作之————批量插入数据(100万级别的数据)-阿里云开发者社区... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第一種方法:使用insert into 插入

從Redis每次獲取100條數據,根據條件去插入到Mysql數據庫中:

條件:

如果當前隊列中的值大于1000條,則會自動的條用該方法,該方法每次獲取從隊列的頭部每次獲取100掉數據插入到Mysql數據庫中,同時以當前隊列的長度為插入條件。

1000為原始數據,從隊列頭獲取100條,插入到Mysql數據,同時刪除已經插入的數據,再通過隊列的長度判斷是否繼續插入,直到循環不滿足條件為止。

[1]獲取頭100條數據:$redis->lRange($liveKey,0,99)

[2]刪除頭100條數據:$redis->lTrim($liveKey, 100, -1);

[1]獲取當前隊列長度:$redis->lLen($liveKey);

public functionredisSaveMysqlAction()

{$liveKey = $this->request->getQuery('liveKey');if(empty($liveKey)){$result = array("errcode" => 500, "errmsg" => "this parameter is empty!");return $this->toJson($result);

}$redis = new\Redis();$redis->connect('1.1.2.16', '6379');$redisInfo = $redis->lRange($liveKey,0,99);

$dataLength = $redis->lLen($liveKey);while($dataLength > 200) {try{$this->db->begin();foreach ($redisInfo as $action) {$sql = "INSERT INTO livecomment (liveId,username,createTime,userId,content) VALUES (?, ? ,?,? ,?)";$this->db->execute($sql, array(

json_decode($action,true)['roomId'],json_decode($action,true)['userName'],json_decode($action,true)['createTime'],json_decode($action,true)['userId'],json_decode($action,true)['content'],));

}$redis->set('message_insert_success', '1');$redis->lTrim($liveKey, 100, -1);$redisInfo = $redis->lRange($liveKey,0,99); // 這句也要重新的獲取,不然就會插入重復的數據,也就是獲取刪除后的數據$dataLength = $redis->lLen($liveKey); //注意這句一定要加上的,做為下一次的判斷標準,當插入完后和刪除后,重新獲取列表的長度,作為條件依據$redis->set('dataLength_backenk', $dataLength);$this->db->commit();

}catch (\Exception $e) {$redis->set('message_insert_fail', '0');$this->db->rollback();

}

}$redis->set('log'.$liveKey,$redis->incr('request_counts'));$result = array("errcode" => 200, "errmsg" => "Data Insert into Success!",'data'=>'dataLength:'.$dataLength.'liveKey:'.$liveKey);return $this->toJson($result);

第二種方法:使用優化SQL語句:將SQL語句進行拼接,使用 insert into table () values? (),(),(),()然后再一次性插入,如果字符串太長,則需要配置下MYSQL,在mysql 命令行中運行 :set global max_allowed_packet =? 2*1024*1024*10;

拼接后的字符串:

'insert into twenty_million (value) values('50'),('50'),('50'),('50'),('50'),('50'),('50'),('50'),('50'),('50')'

實際案例:

/**

* 獲取Redis數據批量的保存到Redis中去解析Redis數據的json格式*/

public functionRedisSaveToMysqlJsonAction()

{$redis = RedisInstance::getInstance();$redis->select(1);$redisInfo = $redis->lRange('message01',0,9999);$dataLength = $redis->lLen('message01');$redis->set('dataLength_front',$dataLength);$t1=microtime(true);while($dataLength > 20000) {try{$this->db->begin();$sql = "INSERT INTO stream_name (name,createTime,userId,content) VALUES";foreach ($redisInfo as $action) {$sql .= "('" . json_decode($action, true)['userName'] . "',

'" . json_decode($action, true)['createTime'] . "',

'" . json_decode($action, true)['userId'] . "',

'" . json_decode($action, true)['content'] . "'),";

}$sql = rtrim($sql, ',');$this->db->execute($sql);$redis->lTrim('message01', 10000, -1);$redisInfo = $redis->lRange('message01',0,9999);$dataLength = $redis->lLen('message01');$this->db->commit();

}catch (\Exception $e) {$redis->set('message_catch', json_encode($e));$this->db->rollback();

}

}echo 'ENDTIME:'.(microtime(true)-$t1)."
";echo 'success';die;

}

輸出結果為:

ENDTIME:3.0146479606628(s)success

總結

以上是生活随笔為你收集整理的mysql批量写入100万数据_Mysql数据库实践操作之————批量插入数据(100万级别的数据)-阿里云开发者社区...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中文字幕一区二区三区四区五区 | 看黄色大片 | 国产精品黄色在线观看 | 激情拍拍 | 夜夜操狠狠操 | 在线视频福利 | 91精品国产99久久久久久红楼 | 性xxxx| 国产一区二区激情视频 | 亚洲国产精品免费在线观看 | 色小说在线观看 | 日韩一区二区不卡视频 | 国产精品va无码一区二区三区 | 韩国黄色网 | 国产美女www爽爽爽 www.国产毛片 | 黑人性视频 | 中文字幕精品国产 | 碰碰97| av免费在线播放 | 亚洲永久精品在线观看 | 日本边添边摸边做边爱 | 中文字幕不卡在线播放 | 99er在线观看| 欧美一区二区免费 | 国产午夜视频在线 | 欧美一级久久 | 大尺度一区二区 | 他揉捏她两乳不停呻吟动态图 | 欧美男女啪啪 | 亚洲第一页在线观看 | 欧美人xxx | 蜜桃精品一区二区 | av男人网 | 四虎最新网址在线观看 | 欧美一区二区久久久 | 97超碰人人草 | 99爱爱 | 二级毛片在线观看 | 国产精品久久久久久久毛片 | 卡一卡二视频 | 欧美日性视频 | 99精品国产成人一区二区 | 黑人借宿巨大中文字幕 | 天天尻逼 | 久久精品视频一区二区三区 | 国产女人18毛片水真多18精品 | 女人被狂躁60分钟视频 | 88av网 | 久久成人a毛片免费观看网站 | 91漂亮少妇露脸在线播放 | 中文字幕日韩有码 | 日本人与黑人做爰视频 | 中文字幕五码 | 在线天堂网 | 摸摸大奶子| 1024国产视频 | 亚洲色图久久 | 在线精品视频播放 | 贵族女沦为官妓h呻吟 | 精品无码久久久久久久久 | 久久九九99| 在线观看成人免费 | 老妇女性较大毛片 | 捆绑调教sm束缚网站 | 小视频国产 | 国产一区在线观看视频 | 四虎影视免费看 | 大肉大捧一进一出好爽视频动漫 | 成人av影院 | 在线视频在线观看 | 成人片免费看 | 精品国产一级片 | 中国人妖和人妖做爰 | 亚洲AV无码成人国产精品色 | 日韩孕交 | 成年人三级网站 | youjizz.com日本 | 色偷偷五月天 | 欧美人与动性xxxxx杂性 | 国产老肥熟 | 国产激情视频一区二区三区 | 在线观看va| 日本强好片久久久久久aaa | 扒下小娇妻的内裤打屁股 | 激情六月综合 | 日韩欧美视频二区 | av免费在线电影 | 国产成人黄色 | 人与动物毛片 | 亚洲视频999 | 精品人妻无码一区二区色欲产成人 | 成人黄色大全 | 亚洲乱亚洲乱 | 在线看片 | 天天做天天爱天天操 | 日韩一区二区在线观看 | 青青草视频网站 | 日韩美女视频在线观看 | 人人精品久久 |