最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mysql使用存儲過程快速添加百萬數(shù)據(jù)的示例代碼

 更新時間:2021年08月23日 11:13:04   作者:jeremylai  
這篇文章主要介紹了Mysql使用存儲過程快速添加百萬數(shù)據(jù),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

前言

為了體現(xiàn)不加索引和添加索引的區(qū)別,需要使用百萬級的數(shù)據(jù),但是百萬數(shù)據(jù)的表,如果使用一條條添加,特別繁瑣又麻煩,這里使用存儲過程快速添加數(shù)據(jù),用時大概4個小時。
創(chuàng)建一個用戶表

CREATE TABLE `t_sales` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(32) COLLATE utf8_bin DEFAULT NULL COMMENT '用戶名',
  `password` varchar(64) COLLATE utf8_bin DEFAULT NULL COMMENT '密碼 MD5存儲',
  `register_time` timestamp NULL DEFAULT NULL COMMENT '注冊時間',
  `type` int(1) DEFAULT NULL COMMENT '用戶類型 1,2,3,4 隨機',
  PRIMARY KEY (`id`),
  KEY `idx_username` (`username`) USING BTREE
)

然后創(chuàng)建存儲過程,批量添加數(shù)據(jù)。

  • 用戶名以常量和數(shù)字拼接
  • 密碼是MD5密碼
  • 注冊時間是當前時間隨機往前推幾天
  • type是取1-4隨機范圍值
create procedure salesAdd()
begin 
 declare i int default 11;
   while i <= 4000000 do
         insert into blog.t_sales
         (`username`,`password`,`register_time`,type) values
         (concat("jack",i),MD5(concat("psswe",i)),from_unixtime(unix_timestamp(now()) - floor(rand() * 800000)),floor(1 + rand() * 4)); 
         set i = i + 1; 
   end while; 
end

然后調(diào)用存儲過程

call salesAdd()

改進版

雖然使用存儲過程添加數(shù)據(jù)相對一個個添加更加便捷,快速,但是添加幾百萬數(shù)據(jù)要花幾個小時時間也是很久的,后面在網(wǎng)上找到不少資料,發(fā)現(xiàn)mysql每次執(zhí)行一條語句都默認自動提交,這個操作非常耗時,所以在在添加去掉自動提交。設(shè)置 SET AUTOCOMMIT = 0;

create procedure salesAdd()
begin 
 declare i int default 1;
 set autocommit = 0;   
   while i <= 4000000 do
         insert into blog.t_sales
         (`username`,`password`,`register_time`,type) values
         (concat("jack",i),MD5(concat("psswe",i)),from_unixtime(unix_timestamp(now()) - floor(rand() * 800000)),floor(1 + rand() * 4)); 
         set i = i + 1; 
   end while;
 set autocommit = 1;     
end

執(zhí)行時間387秒,約為六分鐘,其中還有一半時間用于md5、隨機數(shù)的計算。

[SQL]
call salesAdd();
受影響的行: 0
時間: 387.691s

到此這篇關(guān)于Mysql使用存儲過程快速添加百萬數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Mysql添加百萬數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • VS2019連接mysql8.0數(shù)據(jù)庫的教程圖文詳解

    VS2019連接mysql8.0數(shù)據(jù)庫的教程圖文詳解

    這篇文章主要介紹了VS2019連接mysql8.0數(shù)據(jù)庫的教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • mysql 5.7.5 m15 winx64.zip安裝教程

    mysql 5.7.5 m15 winx64.zip安裝教程

    這篇文章主要為大家詳細介紹了mysql 5.7.5 m15 winx64.zip安裝教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 解決Win7 x64安裝解壓版mysql 5.7.18 winx64出現(xiàn)服務無法啟動問題

    解決Win7 x64安裝解壓版mysql 5.7.18 winx64出現(xiàn)服務無法啟動問題

    這篇文章主要介紹了解決Win7 x64安裝解壓版mysql 5.7.18 winx64出現(xiàn)服務無法啟動問題,需要的朋友可以參考下
    2017-05-05
  • 如何通過SQL找出2個表里值不同的列的方法

    如何通過SQL找出2個表里值不同的列的方法

    本篇文章對如何通過SQL找出2個表里值不同的列的方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • MySQL中where?1=1方法的使用及改進

    MySQL中where?1=1方法的使用及改進

    這篇文章主要介紹了MySQL中where?1=1方法的使用及改進,文章主要通對where?1?=?1的使用及改進展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-05-05
  • mysql could not be resolved: Name or service not known

    mysql could not be resolved: Name or service not known

    今天查看mysql日志的時候發(fā)現(xiàn)[Warning] IP address '10.0.0.220' could not be resolved: Name or service not known,原來是mysql DNS反解:skip-name-resolve的原因,屏蔽一下就可以了
    2015-08-08
  • MySql如何解決mysql沒有root用戶問題

    MySql如何解決mysql沒有root用戶問題

    文章主要描述了在MySQL中沒有root用戶的情況如何解決,首先,作者提到由于沒有root用戶,無法進行后續(xù)的權(quán)限設(shè)置和操作,然后,作者詳細介紹了創(chuàng)建root用戶并賦予其所有權(quán)限的步驟,包括解決可能遇到的錯誤,最后,作者總結(jié)了整個過程,并希望大家能夠從中受益
    2025-02-02
  • mysql中字符串截取與拆分的實現(xiàn)示例

    mysql中字符串截取與拆分的實現(xiàn)示例

    mysql 字符串截取與拆分在很多地方都可以用得到,本文主要介紹了mysql中字符串截取與拆分的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • Windows中MySQL root用戶忘記密碼解決方案

    Windows中MySQL root用戶忘記密碼解決方案

    在實際應用中,經(jīng)常會出現(xiàn)忘記mysql管理員用戶root的密碼的情況出現(xiàn),那么我們?nèi)绾蝸碓O(shè)置一個新密碼從而登錄數(shù)據(jù)庫呢,下面我們來探討下
    2014-07-07
  • win32安裝配置非安裝版的MySQL

    win32安裝配置非安裝版的MySQL

    當前非安裝版是從MySQL.com下載來的v5.1.40;下載下來的是一個ZIP壓縮包,解壓到C:\MySQL5.1.40目錄,接下來,設(shè)置系統(tǒng)環(huán)境變量,好在CMD命令行下使用MySQL。
    2010-02-02

最新評論

雅安市| 钟山县| 佛坪县| 会泽县| 金秀| 会泽县| 金阳县| 平遥县| 安溪县| 汽车| 溧水县| 蚌埠市| 高雄县| 凭祥市| 娱乐| 灵璧县| 镇远县| 甘孜县| 河津市| 临猗县| 阿拉善右旗| 屏东县| 玛多县| 化隆| 桐庐县| 定陶县| 石首市| 吉林省| 五河县| 兰考县| 延津县| 平远县| 萍乡市| 淮北市| 康保县| 龙里县| 泸州市| 淮安市| 堆龙德庆县| 利辛县| 呈贡县|