MemSQL初體驗 - (2)初始化測試環境
2、配置測試環境
建立一個使用者,方便後續使用:
- MemSQL> grant all on *.* to jss identified by "jss" with grant option;
Query OK, 1 row affected (0.03 sec)
為了能夠與MySQL的效能做對比,這裡我們採取與MySQL資料庫相同的物件結構。
建庫與建表:
- MemSQL> create database jssdb;
Query OK, 0 rows affected (0.21 sec)
MemSQL> use jssdb;
Database changed
MemSQL> CREATE TABLE user (
-> user_id INT(10) UNSIGNED NOT NULL auto_increment,
-> user_name VARCHAR(50) DEFAULT NULL,
-> user_email VARCHAR(255) DEFAULT NULL,
-> created DATETIME DEFAULT NULL,
-> PRIMARY KEY (user_id),
-> KEY ind_user_name (user_name))
-> auto_increment=1;
Query OK, 0 rows affected (10.79 sec)
從上面的結果看起來建表費時不短啊,如果注意檢視日誌的話,會發現大部分時間都花在了編譯上:
INFO: Table jssdb.user compiled in 10757 miliseconds (5355 miliseconds for header)
真正的建立是很快的,因此把user表刪除再重新建立,效率就上去了,這也是前面所說的,第一次執行很慢,因為它要編譯。
然後初始化一些資料,這裡也是為了更好的對比效能,直接使用MySQL資料庫中的資料。也順道演示一下如何從MySQL庫中遷移資料到MemSQL中。我先概括一下,基本上,跟從MySQL->MySQL一樣。
從MySQL資料庫中匯出資料:
- $ mysqldump -ujss -pjss --tables jssdb user -t > tbls.sql
匯入資料,也是使mysql命令列匯入:
- $ mysql -u root -h 127.0.0.1 -P 3308 --prompt="MemSQL> " jssdb < tbls.sql
做為一款新生軟體,儘管是主打與MySQL的高度相容,但實際也不可能所有功能都完全相容,就dump出的sql檔案來說,其中就有不少語句是MemSQL不支援的,但是這也沒關係,它並不會中斷工作,只是會在後臺日志中丟擲相應的警告,類似這樣:
- WARNING: WARN DISABLED LOCKDOWN: LOCK TABLES .. WRITE / LOCK TABLES .. LOW_PRIORITY WRITE / LOCK TABLES .. READ LOCAL
WARNING: WARN DISABLED LOCKDOWN: ALTER TABLE DISABLE KEYS
WARNING: WARN DISABLED LOCKDOWN: ALTER TABLE ENABLE KEYS
七十餘萬條記錄,匯入還是挺快的,執行成功後,登入到MemSQL中驗證一下:
- MemSQL> select count(0) from user;
+----------+
| count(0) |
+----------+
| 765952 |
+----------+
1 row in set (0.24 sec)
為了能夠對比效能,我這裡使用perl寫了幾個簡單的指令碼,大致思路是並行多個執行緒執行SQL語句,通過user_name列(該列有索引)查詢user表,user_name的值隨機生成。
==========================================
相關文章:
MemSQL初體驗 - (1)傳說中速度最快的關聯式資料庫軟體
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7607759/viewspace-733791/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 本地測試環境初始化
- OceanBase初體驗之Docker快速部署試用環境Docker
- jacoco-1-java程式碼測試覆蓋率之本地環境初體驗Java
- 如何搭建良好的軟體測試環境?測試環境對軟體測試起到什麼作用?
- 軟體測試--環境講解
- 軟體測試培訓:如何搭建測試環境
- pytest核心測試平臺落地初體驗
- 配置開發環境、生成環境、測試環境開發環境
- html初體驗#2HTML
- 騰訊效能測試工具——PerfDog使用初體驗
- Rxjs初體驗:製作語音測試工具JS
- 想要軟體測試效果好,搭建好測試環境是前提
- android測試環境搭建Android
- 達夢資料庫初體驗-單機環境部署記錄資料庫
- Xcode配置測試環境和線上環境XCode
- 快速體驗k8s叢集的測試、開發環境--allinone部署K8S開發環境None
- 測試人員必看!!!軟體測試環境搭建有哪些原則?
- 測試平臺系列(74) 測試計劃定時執行初體驗
- 用 Spring 區分開發環境、測試環境、生產環境Spring開發環境
- vue2+vite初體驗VueVite
- 新手搭建 kubernetes 測試環境
- kaldi環境搭建 | yesno 測試
- Django測試環境準備Django
- Fedora 上的桌面環境記憶體佔用測試記憶體
- app自動化測試環境配置:adb環境配置、monkey環境配置、appium環境配置大全APP
- 如何在Java中做基準測試?JMH使用初體驗Java
- 搭建自動化測試環境
- Windows配置Delve的測試環境Windows
- griffin環境搭建及功能測試
- 自動化測試框架AutoTestFramework及軟硬體環境-Alltesting|澤眾雲測試框架Framework
- 使用者測評:G2L開發板初體驗
- Angular環境搭建及簡單體驗Angular
- 搭建 vue2 單元測試環境(karma+mocha+webpack3)VueWeb
- 《JMeter實戰》第二章 效能測試初體驗 摘錄JMeter
- Linux-Cgroup V2 初體驗Linux
- Git環境配置.初階Git
- 自動化測試 selenium 環境搭建
- TestNG+Maven+IDEA環境搭建+測試MavenIdea
- 你真的會搭建測試環境嗎?