首頁  >  文章  >  資料庫  >  關於mysql搭建億級cmd5資料庫,毫秒查詢(完整流程)

關於mysql搭建億級cmd5資料庫,毫秒查詢(完整流程)

藏色散人
藏色散人轉載
2020-04-22 13:18:015843瀏覽

前言: 

最近也在玩資料庫,感覺普通機子搞資料庫,還是差了點,全文查找,慢的要查一分鐘更久。 

但搞cmd5函式庫很不錯,億級資料庫,毫秒級。 

好吧,從下面開始,首先你得需要一個mysql資料庫。

環境 : 

apmserv5.2.6 php+mysql 
Navicat for MySQL

推薦這兩個軟體,安裝非常簡單,都是全中文,所以方便新手操作。 

需要的其他東西,電腦一個,約 10GB的硬碟空間。一個大點的字典。 

關於mysql搭建億級cmd5資料庫,毫秒查詢(完整流程)

下面開始第一部分,打開Navicat for MySQL連接,很簡單,這裡就不截圖了。

推薦:《mysql影片教學

開始建立表, hash_cmd5,字段,plaintext,cmd5_16,cmd5_32 

都設定為不為空,第一個255,第二個16, 第三個32位。 

關於mysql搭建億級cmd5資料庫,毫秒查詢(完整流程)

開始匯入數據, 很簡單,參考圖片,自行琢磨。 

關於mysql搭建億級cmd5資料庫,毫秒查詢(完整流程)

參考自己的資料庫來源,設定編碼 

關於mysql搭建億級cmd5資料庫,毫秒查詢(完整流程)

參考自己的資料庫內容。 

關於mysql搭建億級cmd5資料庫,毫秒查詢(完整流程)

第四,五部直接跳過。 

開始第六步, 只需設定plaintext,其他欄位無需設置,但是前提一定要選擇找來的資料庫明文,不然就沒有意義。 

關於mysql搭建億級cmd5資料庫,毫秒查詢(完整流程)

直接到第八步開始,就可以匯入資料了。 

大家自己試試看吧,下一步教大家批量產生 cmd16  32 位元的。

高速單表導入

假如:你的文字檔案在d:\aa.txt

表名: t

欄位名稱:c

則是下面的指令

mysql> load data local infile 'd:/aa.txt' into table cmd5 lines terminated by ',' (cmd5_txt);

 一鍵建立32 16位元md5

 

update `hash` set cmd5_16 = substr(md5(plaintext), 1, 16) where 1=1
 
update `hash` set cmd5_32 = md5(plaintext) where 1=1

  

#至於有的大牛說,這個方法不穩定什麼的,單機測試,單表六億毫無壓力。

以上是關於mysql搭建億級cmd5資料庫,毫秒查詢(完整流程)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除