為了測試1000萬條數據的查詢性能,就需要1000萬條數據,於是在我們做的項目的一個游客表的一條記錄的基礎上來制造。
1、使用mysql的while循環語句,比如手機號的循環,還有一些隨機數,比如性別在男與女之間的隨機數,生日在1950到2018之間的隨機數,省市區縣的隨機數,最后合並起來形成一條游客記錄。
2、剛開始是使用了默認的事務提交方式,即每次插入一條記錄就提交,然而效率卻很低,幾乎每秒也就10條左右,一天下來也就100萬多條,那么1000萬條記錄豈不是要一個多星期?
3、於是改進了一下,多開了一些navicat客戶端來運行存儲過程,效果好了些,但是也好不了哪里去。
4、首先在循環開始時關閉事務自動提交,因為手機號是設置成13600000000開始自增的,所以我讓手機號除以1000,然后取模為0時就提交一次,提交之后同時關閉事務自動提交功能。
這樣一來,效率又提升了些。
