{"id":1095,"date":"2016-01-06T14:42:29","date_gmt":"2016-01-06T06:42:29","guid":{"rendered":"http:\/\/www.royalwzy.com\/?p=1095"},"modified":"2016-01-06T14:46:26","modified_gmt":"2016-01-06T06:46:26","slug":"mysql%e5%8e%8b%e5%8a%9b%e6%b5%8b%e8%af%95","status":"publish","type":"post","link":"http:\/\/www.royalwzy.com\/?p=1095","title":{"rendered":"MySQL\u538b\u529b\u6d4b\u8bd5"},"content":{"rendered":"<p>\u4e3b\u8981\u5185\u5bb9:<br \/>\n1.MySQL\u538b\u529b\u6d4b\u8bd5\u57fa\u51c6\u503c;<br \/>\n2.mysqlslap\u7684\u4ecb\u7ecd\u53ca\u4f7f\u7528;<br \/>\n3.sysbench\u7684\u4ecb\u7ecd\u53ca\u4f7f\u7528;<br \/>\n4.tpcc-mysql\u7684\u4ecb\u7ecd\u53ca\u4f7f\u7528;<\/p>\n<p>MySQL\u538b\u529b\u6d4b\u8bd5\u57fa\u51c6\u503c<br \/>\n1.\u538b\u529b\u6d4b\u8bd5\u7684\u76ee\u7684:<br \/>\n    1.\u786e\u8ba4\u65b0\u7684MySQL\u7248\u672c\u6027\u80fd\u76f8\u6bd4\u4e4b\u524d\u5dee\u5f02\u591a\u5927;\u6bd4\u5982\u4ece5.6\u53d8\u62105.7,\u6216\u8005\u4ece\u5b98\u65b9\u7248\u672c\u6539\u6210Percona\u5206\u652f\u7248\u672c;<br \/>\n    2.\u786e\u8ba4\u65b0\u7684\u670d\u52a1\u5668\u6027\u80fd\u662f\u5426\u66f4\u9ad8,\u80fd\u9ad8\u591a\u5c11;\u6bd4\u5982CPU\u5347\u7ea7\u4e86,\u9635\u5217\u5361cache\u52a0\u5927\u4e86,\u4ece\u673a\u68b0\u76d8\u6362\u6210SSD\u76d8\u4e86;<br \/>\n    3.\u786e\u8ba4\u4e00\u4e9b\u65b0\u7684\u53c2\u6570\u8c03\u6574\u540e,\u5bf9\u6027\u80fd\u5f71\u54cd\u591a\u5c11;\u6bd4\u5982innodb_flush_log_at_trx_commit,sync_binlog\u7b49\u53c2\u6570;<br \/>\n    4.\u786e\u8ba4\u5373\u5c06\u4e0a\u7ebf\u7684\u65b0\u4e1a\u52a1\u5bf9MySQL\u8d1f\u8f7d\u5f71\u54cd\u591a\u5c11,\u662f\u5426\u80fd\u627f\u8f7d\u5f97\u4f4f,\u662f\u5426\u9700\u8981\u5bf9\u670d\u52a1\u5668\u8fdb\u884c\u6269\u5bb9\u6216\u5347\u7ea7\u914d\u7f6e;<br \/>\n2.\u9488\u5bf9\u4e0d\u540c\u7684\u538b\u6d4b\u76ee\u7684,\u76f8\u5e94\u7684\u6d4b\u8bd5\u65b9\u6cd5\u4e5f\u6709\u6240\u4e0d\u540c:<br \/>\n    1.\u5148\u8bf4\u7b2c\u56db\u79cd,\u9700\u8981\u548c\u7ebf\u4e0a\u4e1a\u52a1\u7ed3\u5408\u8d77\u6765,\u8fd9\u65f6\u5019\u5c31\u9700\u8981\u81ea\u884c\u5f00\u53d1\u6d4b\u8bd5\u5de5\u5177,\u6216\u8005\u5229\u7528tcpcopy(https:\/\/github.com\/session-replay-tools\/tcpcopy)\u5c06\u7ebf\u4e0a\u5b9e\u9645\u7528\u6237\u8bf7\u6c42\u5bfc\u5411\u6d4b\u8bd5\u73af\u5883,\u8fdb\u884c\u4eff\u771f\u6a21\u62df\u6d4b\u8bd5;<br \/>\n    2.\u5bf9\u4e8e\u524d\u4e09\u79cd,\u6211\u4eec\u901a\u5e38\u91c7\u7528\u57fa\u51c6\u6d4b\u8bd5\u5c31\u53ef\u4ee5;\u6bd4\u8f83\u5e38\u7528\u7684MySQL\u57fa\u51c6\u538b\u529b\u6d4b\u8bd5\u5de5\u5177\u6709tpcc-mysql,sysbench,mysqlslap\u7b49\u51e0\u4e2a;<br \/>\n3.\u5982\u4f55\u907f\u514d\u538b\u6d4b\u65f6\u53d7\u5230\u7f13\u5b58\u7684\u5f71\u54cd:<br \/>\n    1.\u586b\u5145\u6d4b\u8bd5\u6570\u636e\u6bd4\u7269\u7406\u5185\u5b58\u8fd8\u8981\u5927,\u81f3\u5c11\u8d85\u8fc7innodb_buffer_pool_size\u503c,\u4e0d\u80fd\u5c06\u6570\u636e\u5168\u90e8\u88c5\u8f7d\u5230\u5185\u5b58\u4e2d,\u9664\u975e\u4f60\u7684\u672c\u610f\u5c31\u60f3\u6d4b\u8bd5\u5168\u5185\u5b58\u72b6\u6001\u4e0b\u7684MySQL\u6027\u80fd;<br \/>\n    2.\u6bcf\u8f6e\u6d4b\u8bd5\u5b8c\u6210\u540e,\u90fd\u91cd\u542fmysqld\u5b9e\u4f8b,\u5e76\u4e14\u7528\u4e0b\u9762\u7684\u65b9\u6cd5\u5220\u9664\u7cfb\u7edfcache,\u91ca\u653eswap(\u5982\u679c\u7528\u5230\u4e86swap\u7684\u8bdd),\u751a\u81f3\u53ef\u4ee5\u91cd\u542f\u6574\u4e2aOS;<br \/>\n        1.\u5c06\u810f\u6570\u636e\u5237\u65b0\u5230\u78c1\u76d8:sync;<br \/>\n        2.\u6e05\u9664OS Cache:echo 3 > \/proc\/sys\/vm\/drop_caches<br \/>\n        3.\u91ca\u653eswap:swapoff -a &#038;&#038; swapon -a;<br \/>\n4.\u5982\u4f55\u5c3d\u53ef\u80fd\u4f53\u73b0\u7ebf\u4e0a\u4e1a\u52a1\u771f\u5b9e\u7279\u70b9:<br \/>\n    1.\u5176\u5b9e\u4e0a\u9762\u5df2\u7ecf\u8bf4\u8fc7\u4e86,\u5c31\u662f\u81ea\u884c\u5f00\u53d1\u6d4b\u8bd5\u5de5\u5177\u6216\u8005\u5229\u7528tcpcopy(\u6216\u7c7b\u4f3c\u4ea4\u6362\u673a\u7684mirror\u529f\u80fd)\u5c06\u7ebf\u4e0a\u5b9e\u9645\u7528\u6237\u8bf7\u6c42\u5bfc\u5411\u6d4b\u8bd5\u73af\u5883,\u8fdb\u884c\u4eff\u771f\u6a21\u62df\u6d4b\u8bd5;<br \/>\n    2.\u5229\u7528http_load\u6216siege\u5de5\u5177\u6a21\u62df\u771f\u5b9e\u7684\u7528\u6237\u8bf7\u6c42URL\u8fdb\u884c\u538b\u529b\u6d4b\u8bd5;<br \/>\n5.\u538b\u6d4b\u7ed3\u679c\u5982\u4f55\u89e3\u8bfb:<br \/>\n    1.\u538b\u6d4b\u7ed3\u679c\u9664\u4e86tps\/TpmC\u6307\u6807\u5916,\u8fd8\u5e94\u8be5\u5173\u6ce8\u538b\u6d4b\u671f\u95f4\u7684\u7cfb\u7edf\u8d1f\u8f7d\u6570\u636e,\u5c24\u5176\u662fiops,iowait,svctm,%util,\u6bcf\u79d2I\/O\u5b57\u8282\u6570(I\/O\u541e\u5410),\u4e8b\u52a1\u54cd\u5e94\u65f6\u95f4(tpcc-mysql\/sysbench\u6253\u5370\u7684\u6d4b\u8bd5\u8bb0\u5f55\u4e2d\u5747\u6709);\u53e6\u5916,\u5982\u679cI\/O\u8bbe\u5907\u80fd\u63d0\u4f9b\u8bbe\u5907\u7ea7IOPS,\u8bfb\u5199\u5ef6\u65f6\u6570\u636e\u7684\u8bdd,\u4e5f\u5e94\u8be5\u4e00\u5e76\u5173\u6ce8;<br \/>\n    2.\u5047\u5982\u4e24\u6b21\u6d4b\u8bd5\u7684tps\/TpmC\u7ed3\u679c\u4e00\u6837\u7684\u8bdd,\u90a3\u4e48\u8c01\u7684\u4e8b\u52a1\u54cd\u5e94\u65f6\u95f4,iowait,svctm,%util,\u8bfb\u5199\u5ef6\u65f6\u66f4\u4f4e,\u5c31\u8868\u793a\u90a3\u4e2a\u6d4b\u8bd5\u6a21\u5f0f\u6709\u66f4\u9ad8\u7684\u6027\u80fd\u63d0\u5347\u7a7a\u95f4;<br \/>\n6.\u5982\u4f55\u52a0\u5febtpcc_load\u52a0\u8f7d\u6570\u636e\u7684\u6548\u7387:<br \/>\n    1.tpcc_load\u5176\u5b9e\u662f\u53ef\u4ee5\u5e76\u884c\u52a0\u8f7d\u7684,\u4e00\u65b9\u9762\u662f\u53ef\u4ee5\u533a\u5206ITEMS,WAREHOUSE,CUSTOMER,ORDERS\u56db\u4e2a\u7ef4\u5ea6\u7684\u6570\u636e\u5e76\u884c\u52a0\u8f7d;<br \/>\n    2.\u53e6\u5916,\u6bd4\u5982\u6700\u7ec8\u60f3\u52a0\u8f7d1000\u4e2awarehouse\u7684\u8bdd,\u4e5f\u53ef\u4ee5\u5206\u5f00\u62101000\u4e2a\u5e76\u53d1\u5e76\u884c\u52a0\u8f7d\u7684;<br \/>\n    3.github\u4e0a\u6709\u5e76\u884c\u52a0\u8f7d\u7684\u9879\u76eetpcc_load_parallel.sh,\u52a0\u8f7d\u6548\u7387\u81f3\u5c11\u63d0\u534710\u500d\u4ee5\u4e0a;<\/p>\n<p>mysqlslap\u7684\u4ecb\u7ecd\u53ca\u4f7f\u7528<br \/>\n1.mysqlslap\u7b80\u4ecb:<br \/>\n  1.\u5b83\u662fMySQL\u4ece5.1.4\u7248\u5f00\u59cb\u81ea\u5e26\u7684\u4e00\u4e2a\u57fa\u51c6\u6d4b\u8bd5\u5de5\u5177,\u8be5\u5de5\u5177\u53ef\u4ee5\u6a21\u62df\u591a\u4e2a\u5ba2\u6237\u7aef\u540c\u65f6\u5e76\u53d1\u7684\u5411\u670d\u52a1\u5668\u53d1\u51fa\u67e5\u8be2\u66f4\u65b0,\u7ed9\u51fa\u4e86\u6027\u80fd\u6d4b\u8bd5\u6570\u636e\u800c\u4e14\u63d0\u4f9b\u4e86\u591a\u79cd\u5f15\u64ce\u7684\u6027\u80fd\u6bd4\u8f83;<br \/>\n  2.mysqlslap\u4e3aMySQL\u6027\u80fd\u4f18\u5316\u524d\u540e\u63d0\u4f9b\u4e86\u76f4\u89c2\u7684\u9a8c\u8bc1\u4f9d\u636e,\u4ece\u800c\u5e2e\u52a9DBA\u51c6\u786e\u7684\u638c\u63e1\u7ebf\u4e0a\u6570\u636e\u5e93\u652f\u6491\u7684\u7528\u6237\u6d41\u91cf\u4e0a\u9650\u53ca\u5176\u6297\u538b\u6027\u7b49\u95ee\u9898;<br \/>\n  3.\u67e5\u770b\u5e2e\u52a9:mysqlslap &#8211;help<br \/>\n  4.\u4f7f\u7528\u65b9\u6cd5:mysqlslap [OPTIONS];<br \/>\n  5.\u9ed8\u8ba4\u7684\u8bfb\u53d6\u914d\u7f6e\u6587\u4ef6\u7684\u987a\u5e8f:\/etc\/my.cnf,\/etc\/mysql\/my.cnf,\/usr\/local\/mysql\/etc\/my.cnf,~\/.my.cnf;<br \/>\n2.\u53c2\u6570\u8bf4\u660e:<br \/>\n  &#8211;defaults-file:\u6307\u5b9a\u4ece\u914d\u7f6e\u6587\u4ef6\u4e2d\u8bfb\u53d6\u9009\u9879\u914d\u7f6e;<br \/>\n  -?, &#8211;help:\u67e5\u770b\u5e2e\u52a9;<br \/>\n  -a, &#8211;auto-generate-sql:\u81ea\u52a8\u751f\u6210\u6d4b\u8bd5\u8868\u548c\u6570\u636e;<br \/>\n  &#8211;auto-generate-sql-add-autoincrement:\u81ea\u52a8\u751f\u6210\u7684\u8868\u4e2d\u6dfb\u52a0\u81ea\u589e\u5217;<br \/>\n  &#8211;auto-generate-sql-execute-number=#:\u81ea\u52a8\u751f\u6210\u7684\u67e5\u8be2\u7684\u4e2a\u6570;<br \/>\n  &#8211;auto-generate-sql-guid-primary:\u81ea\u52a8\u5728\u8868\u4e0a\u6dfb\u52a0\u57fa\u4e8eGUID\u7684\u4e3b\u952e;<br \/>\n  &#8211;auto-generate-sql-load-type=name:\u6307\u5b9a\u6d4b\u8bd5\u8d1f\u8f7d\u7684\u7c7b\u578b,\u53d6\u503c\u5305\u62ec:mixed(\u9ed8\u8ba4,\u4e00\u534a\u63d2\u5165\u4e00\u534a\u67e5\u8be2),update,write,key(\u8bfb\u4e3b\u952e)\u548cread;<br \/>\n  &#8211;auto-generate-sql-secondary-indexes=#:\u5728\u81ea\u52a8\u751f\u6210\u7684\u8868\u4e0a\u6dfb\u52a0\u7b2c\u4e8c\u7d22\u5f15\u7684\u4e2a\u6570,\u9ed8\u8ba40;<br \/>\n  &#8211;auto-generate-sql-unique-query-number=#:\u751f\u6210\u57fa\u4e8e\u552f\u4e00\u952e\u67e5\u8be2\u7684\u6d4b\u8bd5\u8bed\u53e5\u6570\u91cf,\u9ed8\u8ba410;<br \/>\n  &#8211;auto-generate-sql-unique-write-number=#:\u751f\u6210\u57fa\u4e8e\u552f\u4e00\u952e\u5199\u7684\u6d4b\u8bd5\u8bed\u53e5\u6570\u91cf,\u9ed8\u8ba4100;<br \/>\n  &#8211;auto-generate-sql-write-number=#:\u6bcf\u4e2a\u7ebf\u7a0b\u6267\u884c\u63d2\u5165\u7684\u8bb0\u5f55\u6570\u91cf,\u9ed8\u8ba4100;<br \/>\n  &#8211;commit=#:\u591a\u5c11\u6761DML\u540e\u63d0\u4ea4\u4e00\u6b21;<br \/>\n  -C, &#8211;compress:\u5982\u679c\u670d\u52a1\u5668\u548c\u5ba2\u6237\u7aef\u652f\u6301\u90fd\u538b\u7f29,\u5219\u538b\u7f29\u4fe1\u606f\u4f20\u9012;<br \/>\n  -c, &#8211;concurrency=name:\u6a21\u62df\u67e5\u8be2\u7684\u5ba2\u6237\u7aef\u5e76\u53d1\u6570\u91cf,\u591a\u4e2a\u53ef\u4ee5\u4f7f\u7528\u9017\u53f7\u5206\u5272;<br \/>\n  &#8211;create=name:\u521b\u5efa\u8868\u7684SQL\u8bed\u53e5\u6216\u8005\u6587\u672c\u6587\u4ef6;<br \/>\n  &#8211;create-schema=name:\u6307\u5b9a\u6d4b\u8bd5\u7684\u6570\u636e\u5e93,\u4e0d\u6307\u5b9a\u5c31\u81ea\u52a8\u521b\u5efa\u4e00\u4e2amysqlslap\u7684schema;<br \/>\n  &#8211;csv[=name]:\u751f\u6210CSV\u683c\u5f0f\u7684\u7ed3\u679c,\u5982\u679c\u4e0d\u6307\u5b9a\u540d\u5b57\u5c31\u6253\u5370\u5230\u6807\u51c6\u8f93\u51fa,\u6307\u5b9a\u540d\u5b57\u5c31\u6253\u5370\u5230\u6307\u5b9a\u7684\u6587\u4ef6\u4e2d;<br \/>\n  -#, &#8211;debug[=#]:\u6307\u5b9adebug\u6a21\u5f0f;<br \/>\n  &#8211;debug-check:\u9000\u51fa\u65f6\u68c0\u67e5\u76f8\u5173\u7684\u5185\u5b58\u548c\u6253\u5f00\u6587\u4ef6\u4f7f\u7528\u4fe1\u606f;<br \/>\n  -T, &#8211;debug-info:\u989d\u5916\u8f93\u51faCPU\u4ee5\u53ca\u5185\u5b58\u7684\u76f8\u5173\u4fe1\u606f;<br \/>\n  &#8211;default-auth=name:\u9ed8\u8ba4\u7684\u5ba2\u6237\u7aef\u63d2\u4ef6\u9a8c\u8bc1\u6587\u4ef6;<br \/>\n  -F, &#8211;delimiter=name:\u5b9a\u4e49SQL\u4f7f\u7528\u7684\u5206\u9694\u7b26;<br \/>\n  &#8211;detach=#:\u6267\u884cN\u6761\u8bed\u53e5\u540e\u65ad\u5f00\u91cd\u8fde;<br \/>\n  &#8211;enable-cleartext-plugin:\u5f00\u542f\/\u7981\u7528\u660e\u6587\u9a8c\u8bc1\u63d2\u4ef6,\u5177\u4f53\u67e5\u770bMySQL\u51e0\u79cd\u8eab\u4efd\u9a8c\u8bc1\u65b9\u5f0f;<br \/>\n  -e, &#8211;engine=name:\u521b\u5efa\u6d4b\u8bd5\u8868\u4f7f\u7528\u7684\u5f15\u64ce,\u591a\u4e2a\u5f15\u64ce\u7528\u9017\u53f7\u5206\u5272;<br \/>\n  -h, &#8211;host=name:\u8fde\u63a5\u5230\u7684\u670d\u52a1\u5668\u4fe1\u606f;<br \/>\n  -i, &#8211;iterations=#:\u8fd0\u884c\u6d4b\u8bd5\u7684\u6b21\u6570;<br \/>\n  &#8211;no-drop:\u5728\u6d4b\u8bd5\u5b8c\u6210\u4e4b\u540e\u4e0d\u5220\u9664\u6d4b\u8bd5\u8868;<br \/>\n  -x, &#8211;number-char-cols=name:\u6d4b\u8bd5\u8868\u4e2dVARCHAR\u7c7b\u578b\u5217\u7684\u4e2a\u6570,\u9ed8\u8ba41\u4e2a,\u4ec5\u5f53\u6307\u5b9a&#8211;auto-generate-sql\u53c2\u6570\u65f6\u6709\u6548;<br \/>\n  -y, &#8211;number-int-cols=name:\u6d4b\u8bd5\u8868\u4e2dVARCHAR\u7c7b\u578b\u5217\u7684\u4e2a\u6570,\u9ed8\u8ba41\u4e2a,\u4ec5\u5f53\u6307\u5b9a&#8211;auto-generate-sql\u53c2\u6570\u65f6\u6709\u6548;<br \/>\n  &#8211;number-of-queries=#:\u603b\u7684\u6d4b\u8bd5\u67e5\u8be2\u6b21\u6570(\u5e76\u53d1\u5ba2\u6237\u6570\u00d7\u6bcf\u5ba2\u6237\u67e5\u8be2\u6b21\u6570);<br \/>\n  &#8211;only-print:\u4e0d\u8fde\u63a5\u5230\u6570\u636e\u5e93,\u53ea\u6253\u5370\u76f8\u5e94\u7684SQL\u8bed\u53e5,\u5373\u6d4b\u8bd5\u8fc7\u7a0b\u7684SQL\u8bed\u53e5;<br \/>\n  -p, &#8211;password[=name]:\u5bc6\u7801\u4fe1\u606f;<br \/>\n  &#8211;plugin-dir=name:\u5ba2\u6237\u7aef\u63d2\u4ef6\u76ee\u5f55;<br \/>\n  -P, &#8211;port=#:\u8fde\u63a5\u7684\u7aef\u53e3\u53f7;<br \/>\n  &#8211;post-query=name:\u5728\u6d4b\u8bd5\u811a\u672c\u8fd0\u884c\u540e\u6267\u884c\u7684\u811a\u672c,\u8fd9\u4e2a\u8fc7\u7a0b\u4e0d\u5f71\u54cd\u65f6\u95f4\u8ba1\u7b97;;<br \/>\n  &#8211;post-system=name:\u5728\u6d4b\u8bd5\u811a\u672c\u8fd0\u884c\u540e\u6267\u884c\u7684\u7cfb\u7edf\u547d\u4ee4;<br \/>\n  &#8211;pre-query=name:\u5728\u6d4b\u8bd5\u811a\u672c\u8fd0\u884c\u524d\u6267\u884c\u7684\u811a\u672c;<br \/>\n  &#8211;pre-system=name:\u5728\u6d4b\u8bd5\u811a\u672c\u8fd0\u884c\u524d\u6267\u884c\u7684\u7cfb\u7edf\u547d\u4ee4;<br \/>\n  &#8211;protocol=name:\u7528\u6237\u8fde\u63a5\u65f6\u4f7f\u7528\u7684\u534f\u8bae,eg:tcp,socket,pipe,memory;<br \/>\n  -q, &#8211;query=name:\u7528\u81ea\u5b9a\u4e49\u811a\u672c\u6267\u884c\u6d4b\u8bd5<br \/>\n  &#8211;secure-auth:\u5b89\u5168\u9a8c\u8bc1,\u62d2\u7edd\u5ba2\u6237\u7aef\u4f7f\u7528\u65e7\u7684\u534f\u8bae\u8fde\u63a5\u670d\u52a1\u5668,\u9ed8\u8ba4\u5f00\u542f,\u4f46\u662f\u53ef\u4ee5\u6307\u5b9a&#8211;skip-secure-auth\u53c2\u6570\u6765\u5173\u95ed;<br \/>\n  -s, &#8211;silent:\u9759\u9ed8\u6a21\u5f0f\u4e0b\u8fd0\u884c\u7a0b\u5e8f;<br \/>\n  -S, &#8211;socket=name:\u8fde\u63a5\u65f6\u6307\u5b9asocket\u6587\u4ef6;<br \/>\n  &#8211;ssl:\u8fde\u63a5\u65f6\u5f00\u542fSSL;<br \/>\n  -u, &#8211;user=name:\u7528\u6237\u540d\u4fe1\u606f;<br \/>\n  -v, &#8211;verbose:\u8f93\u51fa\u4fe1\u606f\u7684\u8be6\u7ec6\u7684\u7ea7\u522b,eg:-vvv;<br \/>\n  -V, &#8211;version:\u7248\u672c\u4fe1\u606f;<br \/>\n3.\u67e5\u770b\u6d4b\u8bd5\u8fc7\u7a0b:mysqlslap -a &#8211;only-print;<br \/>\n4.\u6d4b\u8bd5\u5b9e\u4f8b(\u591a\u7ebf\u7a0b\u6d4b\u8bd5):<br \/>\n  mysqlslap -uroot -p &#8211;concurrency=100 &#8211;iterations=1 &#8211;auto-generate-sql &#8211;auto-generate-sql-load-type=mixed &#8211;auto-generate-sql-add-autoincrement &#8211;engine=InnoDB &#8211;number-of-queries=10 &#8211;debug-info<br \/>\n  \u8bf4\u660e:\u6d4b\u8bd5100\u4e2a\u5e76\u53d1\u7ebf\u7a0b;\u6d4b\u8bd5\u6b21\u65701\u6b21;\u81ea\u52a8\u751f\u6210SQL\u6d4b\u8bd5\u811a\u672c;\u8bfb,\u5199,\u66f4\u65b0\u6df7\u5408\u6d4b\u8bd5;\u81ea\u589e\u957f\u5b57\u6bb5;\u6d4b\u8bd5\u5f15\u64ce\u4e3aInnoDB;\u5171\u8fd0\u884c10\u6b21\u67e5\u8be2;\u8f93\u51faCPU\u8d44\u6e90\u4fe1\u606f;<br \/>\n5.\u6d4b\u8bd5\u5b9e\u4f8b(\u8fed\u4ee3\u6d4b\u8bd5,\u591a\u6b21\u6d4b\u8bd5\u5f97\u51fa\u5e73\u5747\u503c):<br \/>\n  mysqlslap -uroot -p &#8211;concurrency=50,100,200 &#8211;iterations=20 &#8211;number-int-cols=4 &#8211;number-char-cols=35 &#8211;auto-generate-sql &#8211;auto-generate-sql-load-type=mixed &#8211;auto-generate-sql-add-autoincrement &#8211;engine=MyISAM,InnoDB &#8211;number-of-queries=200 &#8211;debug-info -v<br \/>\n  \u8bf4\u660e:\u6d4b\u8bd550,100,200\u4e2a\u5e76\u53d1\u7ebf\u7a0b;\u6d4b\u8bd5\u6b21\u657020\u6b21;\u56db\u4e2aint\u5217\u548c35\u4e2avarchar\u5217;\u81ea\u52a8\u751f\u6210SQL\u6d4b\u8bd5\u811a\u672c;\u8bfb,\u5199,\u66f4\u65b0\u6df7\u5408\u6d4b\u8bd5;\u81ea\u589e\u957f\u5b57\u6bb5;\u6d4b\u8bd5\u5f15\u64ce\u4e3aM\u6709ISAM,InnoDB;\u5171\u8fd0\u884c200\u6b21\u67e5\u8be2;\u8f93\u51faCPU\u8d44\u6e90\u4fe1\u606f;\u60f3\u8981\u8f93\u51fa\u6240\u6709\u4fe1\u606f\u52a0-vvv;<br \/>\n  TIPS:\u5e76\u53d1\u6570\u8d8a\u591a,\u6267\u884c\u5b8c\u6240\u6709\u67e5\u8be2\u7684\u65f6\u95f4\u8d8a\u957f,\u4e3a\u4e86\u51c6\u786e\u8d77\u89c1,\u53ef\u4ee5\u591a\u8fed\u4ee3\u6d4b\u8bd5\u51e0\u6b21;<br \/>\n6.\u603b\u7ed3:<br \/>\n  1.\u65e0\u6cd5\u89c4\u5b9a\u8868\u4e2d\u6d4b\u8bd5\u6570\u636e\u7684\u6570\u91cf;<br \/>\n  2.\u53ef\u4ee5\u4f7f\u7528\u538b\u529b\u6d4b\u8bd5\u5de5\u5177super-smack for MySQL,\u4f46\u662f\u5374\u4e00\u76f4\u6ca1\u6709\u4eba\u7ef4\u62a4\u4e86;<\/p>\n<p>\u2014 \u8865\u5145:<br \/>\nMySQL\u7684\u51e0\u79cd\u8eab\u4efd\u9a8c\u8bc1\u65b9\u5f0f:MySQL\u4e3b\u8981\u662f\u7528\u81ea\u8eab\u7684User Table\u4f5c\u8eab\u4efd\u8ba4\u8bc1,\u4f46\u53ef\u4ee5\u52a0\u5165\u5176\u5b83plugin authentication;<br \/>\n  1.The Native Authentication Plugins;<br \/>\n  2.The PAM Authentication Plugin;<br \/>\n  3.The Windows Native Authentication Plugin;<br \/>\n  4.The Clear-Text Client-Side Authentication Plugin:\u5728\u5ba2\u6237\u7aef\u53d1\u9001\u660e\u6587\u7ed9\u670d\u52a1\u7aef\u9a8c\u8bc1,http:\/\/dev.mysql.com\/doc\/refman\/5.5\/en\/cleartext-authentication-plugin.html;<br \/>\n  5.The Socket Peer-Credential Authentication Plugin;<br \/>\n  6.The Test Authentication Plugin;<\/p>\n<p>sysbench\u7684\u4ecb\u7ecd\u53ca\u4f7f\u7528<br \/>\n1.sysbench\u7b80\u4ecb:<br \/>\n    1.sysbench\u662f\u4e00\u4e2a\u6a21\u5757\u5316\u7684,\u8de8\u5e73\u53f0,\u591a\u7ebf\u7a0b\u57fa\u51c6\u6d4b\u8bd5\u5de5\u5177,\u4e3b\u8981\u7528\u4e8e\u8bc4\u4f30\u6d4b\u8bd5\u5404\u79cd\u4e0d\u540c\u7cfb\u7edf\u53c2\u6570\u4e0b\u7684\u6570\u636e\u5e93\u8d1f\u8f7d\u60c5\u51b5;<br \/>\n    2.sysbench\u7684\u76ee\u7684\u662f1)\u4e0d\u9700\u8981\u8bbe\u7f6e\u590d\u6742\u7684\u6570\u636e\u5e93\u57fa\u51c6\u6d4b\u8bd5,2)\u751a\u81f3\u6839\u672c\u4e0d\u9700\u8981\u5b89\u88c5\u4e00\u4e2a\u6570\u636e\u5e93\u7684\u60c5\u51b5\u4e0b,\u53ef\u4ee5\u5feb\u901f\u4e86\u89e3\u7cfb\u7edf\u6027\u80fd\u72b6\u51b5;<br \/>\n    3.\u76ee\u524dsysbench\u4ee3\u7801\u6258\u7ba1\u5728github\u4e0a(https:\/\/github.com\/akopytov\/sysbench),\u5728\u4e4b\u524d\u8fd8\u7ecf\u5386\u4e86\u7531sourceforge(http:\/\/sysbench.sourceforge.net)\u5230launchpad(https:\/\/launchpad.net\/sysbench)\u7684\u8fc1\u79fb;<br \/>\n    4.\u6700\u65b0\u7248\u672c\u4e3a0.5;<br \/>\n    5.\u4f7f\u7528C\u8bed\u8a00\u5199\u7684\u4e00\u4e2a\u5de5\u5177;<br \/>\n2.sysbench\u652f\u6301\u4ee5\u4e0b\u51e0\u79cd\u6d4b\u8bd5\u6a21\u5f0f:<br \/>\n    1.CPU\u8fd0\u7b97\u6027\u80fd;<br \/>\n    2.\u78c1\u76d8IO\u6027\u80fd;<br \/>\n    3.\u8c03\u5ea6\u7a0b\u5e8f\u6027\u80fd;<br \/>\n    4.\u5185\u5b58\u5206\u914d\u53ca\u4f20\u8f93\u901f\u5ea6;<br \/>\n    5.POSIX\u7ebf\u7a0b\u6027\u80fd;<br \/>\n    6.\u6570\u636e\u5e93\u6027\u80fd(OLTP\u57fa\u51c6\u6d4b\u8bd5),eg:MySQL,Drizzle(\u7cbe\u7b80\u7248\u7684MySQL\u5206\u652f),PostgreSQL,Oracle\u7b49\u51e0\u79cd\u6570\u636e\u5e93;<br \/>\n3.\u5b89\u88c5sysbench:<br \/>\n    1.\u5b89\u88c5\u4f9d\u8d56\u5305:sysbench\u4f9d\u8d56automake\u548clibtool\u4e24\u4e2a\u5305,yum -y install automake libtool;<br \/>\n    2.\u89e3\u538b\u7f29:unzip sysbench-0.5.zip;<br \/>\n    3.\u81ea\u52a8\u914d\u7f6e:.\/autogen.sh;<br \/>\n    4.\u6307\u5b9a\u7f16\u8bd1\u914d\u7f6e:.\/configure &#8211;prefix=\/usr\/local\/sysbench &#8211;with-mysql-includes=\/usr\/local\/mysql\/include &#8211;with-mysql-libs=\/usr\/local\/mysql\/lib;\u9ed8\u8ba4\u652f\u6301MySQL,\u5982\u679c\u9700\u8981\u6d4b\u8bd5Oracle\/PostgreSQL,\u5219\u5728configure\u65f6\u9700\u8981\u52a0\u4e0a\u2013with-oracle\u6216\u8005\u2013with-pgsql\u53c2\u6570;\u5982\u679c\u60f3\u8981\u9ed8\u8ba4\u4e0d\u652f\u6301MySQL,\u9700\u8981\u6dfb\u52a0&#8211;without-mysql\u53c2\u6570;<br \/>\n    5.\u7f16\u8bd1\u5b89\u88c5:make &#038;&#038; make install;<br \/>\n    6.\u4fee\u6539PATH\u73af\u5883\u53d8\u91cf;<br \/>\n    7.\u62a5\u9519\u4fee\u590d,[.\/sysbench: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory],\u662f\u56e0\u4e3asysbench\u65e0\u6cd5\u627e\u5230mysql\u7684\u5e93\u6587\u4ef6,\u53ef\u80fd\u662f\u73af\u5883\u53d8\u91cfLD_LIBRARY_PATH\u6ca1\u6709\u8bbe\u7f6e,export LD_LIBRARY_PATH=\/usr\/local\/mysql\/lib\u5373\u53ef;<br \/>\n4.\u53c2\u6570\u4ecb\u7ecd:<br \/>\n    1.\u4f7f\u7528\u65b9\u6cd5:sysbench [general-options]&#8230; &#8211;test=<test -name> [test-options]&#8230; command;<br \/>\n    2.\u4e00\u822c\u9009\u9879:<br \/>\n      &#8211;num-threads=N:\u4f7f\u7528\u7684\u6d4b\u8bd5\u7ebf\u7a0b\u6570,\u9ed8\u8ba4\u4e3a1;<br \/>\n      &#8211;max-requests=N:\u6700\u5927\u8bf7\u6c42\u6570\u91cf,\u9ed8\u8ba4\u4e3a1W,0\u8868\u793a\u4e0d\u9650\u5236;<br \/>\n      &#8211;max-time=N:\u6700\u5927\u6267\u884c\u65f6\u95f4,\u5355\u4f4d\u662fs,\u9ed8\u8ba40\u4e3a\u4e0d\u9650\u5236;\u4e0e&#8211;max-requests\u4e8c\u9009\u4e00;<br \/>\n      &#8211;forced-shutdown=STRING:\u8d85\u8fc7&#8211;max-time\u6307\u5b9a\u65f6\u95f4\u540e\u5f3a\u5236\u4e2d\u65ad,\u9ed8\u8ba4\u4e3aoff;<br \/>\n      &#8211;thread-stack-size=SIZE:\u6bcf\u4e2a\u7ebf\u7a0b\u4f7f\u7528\u7684\u6808\u5927\u5c0f,\u9ed8\u8ba4\u662f64K;<br \/>\n      &#8211;tx-rate=N:target transaction rate (tps) [0];<br \/>\n      &#8211;report-interval=N:\u9636\u6bb5\u6027\u7684\u62a5\u544a\u4e2d\u95f4\u7edf\u8ba1\u4fe1\u606f,\u5355\u4f4d\u4e3as,\u9ed8\u8ba40\u4e3a\u7981\u7528\u6b64\u9636\u6bb5\u6027\u7684\u62a5\u544a;<br \/>\n      &#8211;report-checkpoints=[LIST,&#8230;]:\u5728\u6307\u5b9a\u7684\u65f6\u95f4\u70b9,\u5bfc\u51fa\u6240\u6709\u7684\u7edf\u8ba1\u4fe1\u606f,\u5e76\u4e14\u91cd\u7f6e\u6240\u6709\u7684\u8ba1\u6570\u5668;\u53ef\u4ee5\u6307\u5b9a\u7528\u9017\u53f7\u5206\u5272\u7684\u5217\u8868,\u5355\u4f4d\u662fs,\u9ed8\u8ba4\u662f\u5173\u95ed\u7684;<br \/>\n      &#8211;percentile=N:\u8868\u793a\u8bbe\u5b9a\u91c7\u6837\u6bd4\u4f8b,\u9ed8\u8ba4\u662f95%;\u53ef\u4ee5\u8bbe\u7f6e99%\u5373\u4e22\u5f031%\u7684\u957f\u8bf7\u6c42,\u5728\u5269\u4f59\u768499%\u91cc\u53d6\u6700\u5927\u503c;<br \/>\n      &#8211;test=STRING:\u6307\u5b9a\u6d4b\u8bd5\u7684\u9879\u76ee;<br \/>\n      &#8211;debug=[on|off]:\u662f\u5426\u6253\u5370\u8c03\u8bd5\u4fe1\u606f,\u9ed8\u8ba4\u4e3aoff;<br \/>\n      &#8211;validate=[on|off]:\u5728\u53ef\u80fd\u7684\u60c5\u51b5\u4e0b\u6267\u884c\u9a8c\u8bc1\u68c0\u67e5,\u9ed8\u8ba4\u4e3aoff;<br \/>\n      &#8211;help=[on|off]:\u67e5\u770b\u5e2e\u52a9\u4fe1\u606f;<br \/>\n      &#8211;version=[on|off]:\u6253\u5370\u7248\u672c\u4fe1\u606f;<br \/>\n      &#8211;rand-init=[on|off]:\u6d4b\u8bd5\u5f00\u59cb\u65f6\u662f\u5426\u521d\u59cb\u5316\u968f\u673a\u6570\u751f\u6210\u5668,\u9ed8\u8ba4\u4e3aoff;<br \/>\n      &#8211;rand-type=STRING:\u968f\u673a\u6570\u5206\u5e03\u6a21\u5f0f,eg:uniform(\u56fa\u5b9a),gaussian(\u9ad8\u65af),special(\u7279\u5b9a\u7684,\u9ed8\u8ba4),pareto(\u5e15\u7d2f\u6258);<br \/>\n          1.special\u8868\u793a\u5b58\u5728\u70ed\u70b9\u6570\u636e;<br \/>\n          2.uniform\u8868\u793a\u975e\u70ed\u70b9\u6570\u636e\u6a21\u5f0f;<br \/>\n      &#8211;rand-spec-iter=N:\u6570\u5b57\u751f\u6210\u5668\u4e2d\u4f7f\u7528\u8fed\u4ee3\u5668\u7684\u6570\u91cf,\u9ed8\u8ba4\u662f12;<br \/>\n      &#8211;rand-spec-pct=N:special\u7c7b\u578b\u6570\u636e\u7684\u6bd4\u7387,\u9ed8\u8ba4\u662f1;<br \/>\n      &#8211;rand-spec-res=N:special\u503c\u4f7f\u7528\u7684\u6bd4\u7387,\u9ed8\u8ba4\u662f75;<br \/>\n      &#8211;rand-seed=N:\u968f\u673a\u6570\u751f\u6210\u5668\u7684\u79cd\u5b50,\u9ed8\u8ba4\u4e3a0;<br \/>\n      &#8211;rand-pareto-h=N:pareto\u6570\u636e\u5206\u5e03\u6a21\u5f0f\u4e0b\u53c2\u6570h\u7684\u503c,\u9ed8\u8ba4\u662f0.2;<br \/>\n    3.\u65e5\u5fd7\u9009\u9879:<br \/>\n      &#8211;verbosity=N:\u65e5\u5fd7\u7ea7\u522b,5\u662fdebug\u7ea7\u522b,0\u662f\u53ea\u6253\u5370\u4e25\u91cd\u9519\u8bef\u4fe1\u606f,\u9ed8\u8ba4\u4e3a3;<br \/>\n      &#8211;percentile=N:      percentile rank of query response times to count [95]<br \/>\n    4.\u6d4b\u8bd5\u7684\u9879\u76ee:<br \/>\n      1.fileio &#8211; File I\/O test<br \/>\n      2.cpu &#8211; CPU performance test<br \/>\n      3.memory &#8211; Memory functions speed test<br \/>\n      4.threads &#8211; Threads subsystem performance test<br \/>\n      5.mutex &#8211; Mutex performance test<br \/>\n      6.oltp &#8211; OLTP test,\u57280.5\u7248\u672c\u4e4b\u524d\u6709,\u5df2\u88ab\u66ff\u6362\u6389;<br \/>\n    5.\u547d\u4ee4:<br \/>\n        1.prepare:\u6267\u884c\u6d4b\u8bd5\u524d\u7684\u51c6\u5907\u5de5\u4f5c;\u6bd4\u5982fileio\u6d4b\u8bd5\u65f6\u5728\u78c1\u76d8\u4e0a\u521b\u5efa\u5fc5\u8981\u7684\u6587\u4ef6,\u6216\u8005\u5728oltp\u6d4b\u8bd5\u65f6\u586b\u5145\u6d4b\u8bd5\u6570\u636e\u5e93;<br \/>\n        2.run:\u6267\u884c\u771f\u5b9e\u7684\u6d4b\u8bd5;<br \/>\n        3.cleanup:\u6d4b\u8bd5\u540e\u79fb\u9664\u8fd0\u884c\u65f6\u4ea7\u751f\u7684\u4e34\u65f6\u6570\u636e;<br \/>\n        4.help:\u67e5\u770b\u6307\u5b9a\u6d4b\u8bd5\u9879\u76ee\u7684\u5e2e\u52a9;eg:sysbench &#8211;test=cpu help;<br \/>\n5.CPU\u6d4b\u8bd5:<br \/>\n    1.\u76f8\u5173\u9009\u9879:<br \/>\n      &#8211;cpu-max-prime=N:\u6700\u5927\u8d28\u6570\u53d1\u751f\u5668\u6570\u91cf,\u5373\u4ea7\u751fN\u4e2a\u7d20\u6570,\u9ed8\u8ba4\u4e3a10000;<br \/>\n    2.\u6d4b\u8bd5\u8ba1\u7b97\u4ea7\u751f2000\u4e2a\u7d20\u6570\u6240\u9700\u8981\u7684\u65f6\u95f4:sysbench &#8211;test=cpu &#8211;cpu-max-prime=2000 run;<br \/>\n    3.\u67e5\u770bCPU\u76f8\u5173\u4fe1\u606f:less \/proc\/cpuinfo;<br \/>\n6.\u7ebf\u7a0b(threads)\u6d4b\u8bd5:<br \/>\n    1.\u6d4b\u8bd5\u7ebf\u7a0b\u8c03\u5ea6\u5668\u7684\u6027\u80fd,\u5bf9\u4e8e\u9ad8\u8d1f\u8f7d\u60c5\u51b5\u4e0b\u6d4b\u8bd5\u7ebf\u7a0b\u8c03\u5ea6\u5668\u7684\u884c\u4e3a\u975e\u5e38\u6709\u7528;<br \/>\n    2.\u76f8\u5173\u9009\u9879:<br \/>\n      &#8211;thread-yields=N:\u6bcf\u4e2a\u8bf7\u6c42\u4ea7\u751f\u591a\u5c11\u4e2a\u7ebf\u7a0b,\u9ed8\u8ba4\u4e3a1000;<br \/>\n      &#8211;thread-locks=N:\u6bcf\u4e2a\u7ebf\u7a0b\u7684\u9501\u7684\u6570\u91cf,\u9ed8\u8ba4\u4e3a8;<br \/>\n    3.\u4f7f\u752864\u4e2a\u7ebf\u7a0b,\u6bcf\u4e2a\u8bf7\u6c42\u4ea7\u751f100\u4e2a\u7ebf\u7a0b,\u7ebf\u7a0b\u9501\u6570\u4e3a2:sysbench &#8211;test=threads &#8211;num-threads=64 &#8211;thread-yields=100 &#8211;thread-locks=2 run;<br \/>\n7.\u6587\u4ef6IO\u6027\u80fd\u6d4b\u8bd5:<br \/>\n    1.\u76f8\u5173\u9009\u9879:<br \/>\n      &#8211;file-num=N:\u521b\u5efa\u6d4b\u8bd5\u6587\u4ef6\u7684\u6570\u91cf,\u9ed8\u8ba4\u4e3a128;<br \/>\n      &#8211;file-block-size=N:\u6d4b\u8bd5\u65f6\u6587\u4ef6\u5757\u7684\u5927\u5c0f,\u9ed8\u8ba4\u662f16384(16K);<br \/>\n      &#8211;file-total-size=SIZE:\u6d4b\u8bd5\u6587\u4ef6\u7684\u603b\u5927\u5c0f,\u9ed8\u8ba4\u662f2G;<br \/>\n      &#8211;file-test-mode=STRING:\u6587\u4ef6\u6d4b\u8bd5\u6a21\u5f0f,eg:seqwr(\u987a\u5e8f\u5199),seqrewr(\u987a\u5e8f\u8bfb\u5199),seqrd(\u987a\u5e8f\u8bfb),rndrd(\u968f\u673a\u8bfb),rndwr(\u968f\u673a\u5199),rndrw(\u968f\u673a\u8bfb\u5199);<br \/>\n      &#8211;file-io-mode=STRING:\u6587\u4ef6\u64cd\u4f5c\u6a21\u5f0f,eg:sync(\u540c\u6b65,\u9ed8\u8ba4),async(\u5f02\u6b65),fastmmap(\u5feb\u901fmap\u6620\u5c04),slowmmap(\u6162map\u6620\u5c04);<br \/>\n      &#8211;file-extra-flags=STRING:\u4f7f\u7528\u989d\u5916\u7684\u6807\u5fd7\u6765\u6253\u5f00\u6587\u4ef6,eg:sync,dsync,direct;\u9ed8\u8ba4\u4e3a\u7a7a;<br \/>\n      &#8211;file-fsync-freq=N:\u6267\u884cfsync()\u7684\u9891\u7387,\u9ed8\u8ba4\u662f100,0\u8868\u793a\u4e0d\u4f7f\u7528fsync();<br \/>\n      &#8211;file-fsync-all=[on|off]:\u6bcf\u6267\u884c\u5b8c\u4e00\u6b21\u5199\u64cd\u4f5c\u5c31\u6267\u884c\u4e00\u6b21fsync,\u9ed8\u8ba4\u662foff;<br \/>\n      &#8211;file-fsync-end=[on|off]:\u5728\u6d4b\u8bd5\u7ed3\u675f\u65f6\u624d\u6267\u884cfsync,\u9ed8\u8ba4\u662fon;<br \/>\n      &#8211;file-fsync-mode=STRING:\u4f7f\u7528\u54ea\u79cd\u65b9\u6cd5\u8fdb\u884c\u540c\u6b65,eg:fsync(\u9ed8\u8ba4),fdatasync;<br \/>\n      &#8211;file-merged-requests=N:\u5982\u679c\u53ef\u4ee5,\u5408\u5e76\u6700\u591a\u7684IO\u8bf7\u6c42\u6570,\u9ed8\u8ba4\u662f0\u8868\u793a\u4e0d\u5408\u5e76;<br \/>\n      &#8211;file-rw-ratio=N:\u6d4b\u8bd5\u65f6\u7684\u8bfb\u5199\u6bd4\u4f8b,\u9ed8\u8ba4\u662f1.5;<br \/>\n    2.\u6d4b\u8bd5:\u6587\u4ef6\u603b\u5927\u5c0f\u4e3a2G,20\u4e2a\u5e76\u53d1\u7ebf\u7a0b,\u968f\u673a\u8bfb\u5199;<br \/>\n      1.prepare\u9636\u6bb5:sysbench &#8211;test=fileio &#8211;num-threads=20 &#8211;file-total-size=2G &#8211;file-test-mode=rndrw prepare<br \/>\n      2.run\u9636\u6bb5:sysbench &#8211;test=fileio &#8211;num-threads=20 &#8211;file-total-size=2G &#8211;file-test-mode=rndrw run<br \/>\n      3.\u6e05\u7406\u6d4b\u8bd5\u65f6\u751f\u6210\u7684\u6587\u4ef6:sysbench &#8211;test=fileio &#8211;num-threads=20 &#8211;file-total-size=2G &#8211;file-test-mode=rndrw cleanup<br \/>\n8.\u4e92\u65a5\u9501(Mutex)\u6d4b\u8bd5:<br \/>\n    1.\u76f8\u5173\u9009\u9879:<br \/>\n      &#8211;mutex-num=N:\u6570\u7ec4\u4e92\u65a5\u7684\u603b\u5927\u5c0f,\u9ed8\u8ba4\u662f4096;<br \/>\n      &#8211;mutex-locks=N:\u6bcf\u4e2a\u7ebf\u7a0b\u4e92\u65a5\u9501\u7684\u6570\u91cf,\u9ed8\u8ba4\u662f50000;<br \/>\n      &#8211;mutex-loops=N:\u5185\u90e8\u4e92\u65a5\u9501\u7684\u7a7a\u5faa\u73af\u6570\u91cf,\u9ed8\u8ba4\u662f10000;<br \/>\n    2.\u6d4b\u8bd5\u4e92\u65a5\u9501\u7684\u6027\u80fd,\u65b9\u5f0f\u662f\u6a21\u62df\u6240\u6709\u7ebf\u7a0b\u5728\u540c\u4e00\u65f6\u523b\u5e76\u53d1\u8fd0\u884c,\u5e76\u90fd\u77ed\u6682\u8bf7\u6c42\u4e92\u65a5\u9501:sysbench \u2013-test=mutex \u2013-num-threads=100 \u2013-mutex-num=1000 \u2013-mutex-locks=100000 \u2013-mutex-loops=10000 run<br \/>\n9.\u5185\u5b58\u6d4b\u8bd5:<br \/>\n    1.\u76f8\u5173\u9009\u9879:<br \/>\n      &#8211;memory-block-size=SIZE:\u6d4b\u8bd5\u65f6\u5185\u5b58\u5757\u5927\u5c0f,\u9ed8\u8ba4\u662f1K;<br \/>\n      &#8211;memory-total-size=SIZE:\u4f20\u8f93\u6570\u636e\u7684\u603b\u5927\u5c0f,\u9ed8\u8ba4\u662f100G;<br \/>\n      &#8211;memory-scope=STRING:\u5185\u5b58\u8bbf\u95ee\u8303\u56f4,eg:global(\u9ed8\u8ba4),local;<br \/>\n      &#8211;memory-hugetlb=[on|off]:\u4eceHugeTLB\u6c60\u5185\u5b58\u5206\u914d,\u9ed8\u8ba4\u662foff;<br \/>\n      &#8211;memory-oper=STRING: \u5185\u5b58\u64cd\u4f5c\u7c7b\u578b,eg:read,write(\u9ed8\u8ba4),none;<br \/>\n      &#8211;memory-access-mode=STRING:\u5b58\u50a8\u5668\u5b58\u53d6\u65b9\u5f0f,eg:seq(\u9ed8\u8ba4),rnd;<br \/>\n    2.\u5185\u5b58\u6d4b\u8bd5\u6d4b\u8bd5\u4e86\u5185\u5b58\u7684\u8fde\u7eed\u8bfb\u5199\u6027\u80fd:sysbench &#8211;test=memory &#8211;memory-block-size=8k &#8211;memory-total-size=1G run<br \/>\n10.MySQL\u6570\u636e\u5e93\u6d4b\u8bd5:<br \/>\n    1.sysbench v0.5\u901a\u8fc7\u4e00\u7cfb\u5217LUA\u811a\u672c\u6765\u66ff\u6362\u4e4b\u524d\u7684oltp,\u4ece\u800c\u6765\u6a21\u62df\u66f4\u63a5\u8fd1\u771f\u5b9e\u7684\u57fa\u51c6\u6d4b\u8bd5\u73af\u5883;<br \/>\n    2.\u811a\u672c\u5728\/<path>\/sysbench-0.5\/sysbench\/tests\/db\/\u76ee\u5f55\u4e0b,\u8fd9\u4e9b\u6d4b\u8bd5\u811a\u672c\u5305\u542b:insert.lua,oltp.lua,parallel_prepare.lua,select_random_points.lua,update_index.lua,delete.lua,oltp_simple.lua,select.lua,select_random_ranges.lua,update_non_index.lua,\u811a\u672c\u4f7f\u7528\u65b9\u5f0f\u57fa\u672c\u7c7b\u4f3c;<br \/>\n    3.sysbench v0.5\u9ed8\u8ba4\u4f7f\u7528sbtest\u5e93,\u4f46\u662f\u9700\u8981\u81ea\u5df1\u624b\u5de5\u5148\u521b\u5efa\u597d,\u4e5f\u53ef\u4ee5\u4f7f\u7528&#8211;mysql-db\u6307\u5b9a,\u5176\u4ed6\u975e\u9ed8\u8ba4\u9879\u6307\u5b9a\u9009\u9879:<br \/>\n      &#8211;mysql-host=[LIST,&#8230;]:MySQL\u670d\u52a1\u5668\u5730\u5740,\u9ed8\u8ba4\u4e3alocalhost;<br \/>\n      &#8211;mysql-port=N:MySQL\u670d\u52a1\u5668\u7aef\u53e3\u53f7,\u9ed8\u8ba4\u4e3a3306;<br \/>\n      &#8211;mysql-socket=STRING:MySQL socket;<br \/>\n      &#8211;mysql-user=STRING:MySQL\u7528\u6237,\u9ed8\u8ba4\u4e3asbtest;<br \/>\n      &#8211;mysql-password=STRING:MySQL\u5bc6\u7801;<br \/>\n      &#8211;mysql-db=STRING:MySQL\u6570\u636e\u5e93\u540d\u79f0,\u9ed8\u8ba4\u4e3adbtest;<br \/>\n      &#8211;mysql-table-engine=STRING:\u4f7f\u7528\u7684\u5f15\u64ce,eg:myisam,innodb(\u9ed8\u8ba4),bdb,heap,ndbcluster,federated;<br \/>\n      &#8211;mysql-engine-trx=STRING:\u5b58\u50a8\u5f15\u64ce\u662f\u5426\u4f7f\u7528\u4e8b\u52a1,eg:yes,no,auto(\u9ed8\u8ba4);<br \/>\n      &#8211;mysql-ssl=[on|off]:\u662f\u5426\u4f7f\u7528ssl\u8fde\u63a5,\u9ed8\u8ba4\u4e3aoff;<br \/>\n      &#8211;mysql-create-options=:\u521b\u5efa\u811a\u672c\u662f\u5426\u6dfb\u52a0CREATE TABLE,\u9ed8\u8ba4\u4e3a\u7a7a;<br \/>\n    4.\u51c6\u5907\u9636\u6bb5:\u751f\u6210\u8868\u5e76\u63d2\u5165\u6570\u636e,\u53ef\u4f7f\u7528parallel_prepare.lua\u811a\u672c\u6765\u5e76\u884c\u51c6\u5907\u6570\u636e;<br \/>\n      &#8211;db-driver:\u670d\u52a1\u5668\u7c7b\u578b,eg:mysql(\u9ed8\u8ba4),drizzle;<br \/>\n      &#8211;mysql-table-engine:\u8868\u5b58\u6570\u5f15\u64ce;<br \/>\n      &#8211;myisam-max-rowsMyISAM\u5f15\u64ce\u8868\u7684\u6700\u5927\u8bb0\u5f55\u6570,\u9ed8\u8ba4\u4e3a100W;<br \/>\n      &#8211;oltp-table-count:\u751f\u6210\u8868\u6570\u91cf,\u540d\u5b57\u4e3a:sbtest1\u3001sbtest2&#8230;;<br \/>\n      &#8211;oltp-table-size:\u751f\u6210\u8868\u7684\u884c\u6570;<br \/>\n      &#8211;oltp-secondary:ID\u5217\u751f\u6210\u4e8c\u7ea7\u7d22\u5f15\u800c\u4e0d\u662f\u4e3b\u952e;<br \/>\n      &#8211;oltp-auto-inc=[on|off]:\u8bbe\u7f6eID\u5217\u662f\u5426\u81ea\u589e,\u9ed8\u8ba4\u4e3aon;<br \/>\n    5.\u8fd0\u884c\u9636\u6bb5:<br \/>\n      &#8211;oltp-tables-count=N:\u8868\u7684\u6570\u91cf;<br \/>\n      &#8211;oltp-read-only=[on|off]:\u662f\u5426\u4ec5\u6267\u884cSELECT\u6d4b\u8bd5;\u9ed8\u8ba4\u4e3aoff,\u8868\u793a\u4e0d\u8981\u8fdb\u884c\u53ea\u8bfb\u6d4b\u8bd5,\u4e5f\u5c31\u662f\u4f1a\u91c7\u7528\u8bfb\u5199\u6df7\u5408\u6a21\u5f0f\u6d4b\u8bd5;<br \/>\n      &#8211;oltp-dist-type:\u968f\u673a\u6570\u5206\u5e03\u72b6\u6001,eg:uniform(\u5747\u5300\u5206\u5e03),gauss(\u9ad8\u65af\u5206\u5e03),special(\u7279\u6b8a\u5206\u5e03);<br \/>\n      &#8211;oltp-dist-pct:\u7279\u6b8a\u5206\u5e03\u7684\u767e\u5206\u6bd4\u503c;<br \/>\n      &#8211;oltp-dist-res:\u7279\u6b8a\u5206\u5e03\u7684\u767e\u5206\u6bd4;<br \/>\n      &#8211;oltp-point-selects:\u5355\u4e2a\u4e8b\u52a1\u4e2d\u6307\u5b9a\u7684selec\u67e5\u8be2\u4e2a\u6570;<br \/>\n      &#8211;oltp-range-size:\u8303\u56f4\u67e5\u8be2\u7684\u8303\u56f4\u5927\u5c0f,\u8be5\u503c\u5e94\u6bd4oltp-table-size\u5c0f;<br \/>\n      &#8211;oltp-simple-ranges:\u5355\u4e2a\u4e8b\u52a1\u4e2d\u6307\u5b9a\u7684\u7b80\u5355\u8303\u56f4\u67e5\u8be2\u4e2a\u6570;<br \/>\n      &#8211;oltp-sum-ranges:\u5355\u4e2a\u4e8b\u52a1\u4e2d\u6307\u5b9a\u7684SUM\u8303\u56f4\u67e5\u8be2\u4e2a\u6570;<br \/>\n      &#8211;oltp-order-ranges:\u5355\u4e2a\u4e8b\u52a1\u4e2d\u6307\u5b9a\u7684ORDER\u8303\u56f4\u67e5\u8be2\u4e2a\u6570;<br \/>\n      &#8211;oltp-distinct-ranges:\u5355\u4e2a\u4e8b\u52a1\u4e2d\u6307\u5b9a\u7684DISTINCT\u8303\u56f4\u67e5\u8be2\u4e2a\u6570;<br \/>\n      &#8211;oltp-index-updates:\u5355\u4e2a\u4e8b\u52a1\u4e2d\u6307\u5b9a\u7684\u4f7f\u7528\u7d22\u5f15\u66f4\u65b0\u7684\u4e2a\u6570;<br \/>\n      &#8211;oltp-non-index-updates:\u5355\u4e2a\u4e8b\u52a1\u4e2d\u6307\u5b9a\u7684\u4e0d\u4f7f\u7528\u7d22\u5f15\u66f4\u65b0\u7684\u4e2a\u6570;<br \/>\n    6.\u6e05\u7406\u9636\u6bb5;<br \/>\n    7.\u6d4b\u8bd5:<br \/>\n        1.\u51c6\u5907(\u65b9\u6cd51):sysbench &#8211;mysql-db=test &#8211;mysql-user=root &#8211;mysql-password= &#8211;test=\/tools\/sysbench-0.5\/sysbench\/tests\/db\/oltp.lua &#8211;mysql-table-engine=innodb &#8211;oltp-table-size=100000 prepare<br \/>\n        2.\u51c6\u5907(\u65b9\u6cd52,\u51c6\u5907\u6570\u636e\u540e\u8fd0\u884c):\u4e5f\u53ef\u4f7f\u7528parallel_prepare.lua\u811a\u672c\u5e76\u884c\u51c6\u5907\u6d4b\u8bd5\u6570\u636e,\u7ebf\u7a0b\u6570\u5e94\u8be5\u4e3a\u8fd0\u884c\u8868\u7684\u500d\u6570;sysbench &#8211;mysql-db=sbtest &#8211;mysql-user=root &#8211;mysql-password= &#8211;test=\/tools\/sysbench-0.5\/sysbench\/tests\/db\/parallel_prepare.lua &#8211;mysql-table-engine=innodb &#8211;oltp-table-size=100000 &#8211;num-threads=10 &#8211;oltp-tables-count=10 run<br \/>\n        3.\u8fd0\u884c:sysbench &#8211;mysql-db=test &#8211;mysql-user=root &#8211;mysql-password= &#8211;test=\/tools\/sysbench-0.5\/sysbench\/tests\/db\/oltp.lua &#8211;num_threads=10 &#8211;oltp-tables-count=10 &#8211;oltp-table-size=100000 &#8211;num-threads=8 &#8211;report-interval=10 &#8211;rand-type=uniform &#8211;max-time=100 &#8211;percentile=99 run<br \/>\n        4.\u6e05\u7406:sysbench &#8211;mysql-db=test &#8211;mysql-user=root &#8211;mysql-password= &#8211;test=\/tools\/sysbench-0.5\/sysbench\/tests\/db\/oltp.lua &#8211;oltp-table-size=100000 &#8211;oltp-tables-count=10 cleanup<br \/>\n    8.\u53ef\u4ee5\u5bf9\u6570\u636e\u5e93\u8fdb\u884c\u8c03\u4f18\u540e,\u518d\u4f7f\u7528sysbench\u5bf9OLTP\u8fdb\u884c\u6d4b\u8bd5,\u770b\u770bTPS\u662f\u4e0d\u662f\u4f1a\u6709\u6240\u63d0\u9ad8;<br \/>\n    9.TIPS:<br \/>\n        1.sysbench\u7684\u6d4b\u8bd5\u53ea\u662f\u57fa\u51c6\u6d4b\u8bd5,\u5e76\u4e0d\u80fd\u4ee3\u8868\u5b9e\u9645\u4f01\u4e1a\u73af\u5883\u4e0b\u7684\u6027\u80fd\u6307\u6807;<br \/>\n        2.\u771f\u5b9e\u6d4b\u8bd5\u573a\u666f\u4e2d,\u6570\u636e\u8868\u5efa\u8bae\u4e0d\u4f4e\u4e8e10\u4e2a,\u5355\u8868\u6570\u636e\u91cf\u4e0d\u4f4e\u4e8e500\u4e07\u884c,\u5f53\u7136\u4e86,\u8981\u89c6\u670d\u52a1\u5668\u786c\u4ef6\u914d\u7f6e\u800c\u5b9a;\u5982\u679c\u662f\u914d\u5907\u4e86SSD\u6216\u8005PCIE SSD\u8fd9\u79cd\u9ad8IOPS\u8bbe\u5907\u7684\u8bdd,\u5219\u5efa\u8bae\u5355\u8868\u6570\u636e\u91cf\u6700\u5c11\u4e0d\u4f4e\u4e8e1\u4ebf\u884c;<br \/>\n        3.\u771f\u5b9e\u6d4b\u8bd5\u573a\u666f\u4e2d,\u5efa\u8bae\u6301\u7eed\u538b\u6d4b\u65f6\u957f\u4e0d\u5c0f\u4e8e30\u5206\u949f,\u5426\u5219\u6d4b\u8bd5\u6570\u636e\u53ef\u80fd\u4e0d\u5177\u53c2\u8003\u610f\u4e49;<br \/>\n    10.\u53c2\u8003\u6587\u6863:https:\/\/www.percona.com\/docs\/wiki\/benchmark:sysbench:olpt.lua<\/p>\n<p>&#8212; \u8fd0\u884c\u62a5\u544a\u89e3\u8bfb;<br \/>\nThreads started!<br \/>\n&#8212; \u6bcf10\u79d2\u949f\u62a5\u544a\u4e00\u6b21\u6d4b\u8bd5\u7ed3\u679c:tps,\u6bcf\u79d2\u8bfb,\u6bcf\u79d2\u5199,99%\u4ee5\u4e0a\u7684\u54cd\u5e94\u65f6\u957f\u7edf\u8ba1;<br \/>\n[  10s] threads: 8, tps: 1111.51, reads\/s: 15568.42, writes\/s: 4446.13, response time: 9.95ms (99%)<br \/>\n[  20s] threads: 8, tps: 1121.90, reads\/s: 15709.62, writes\/s: 4487.80, response time: 9.78ms (99%)<br \/>\n[  30s] threads: 8, tps: 1120.00, reads\/s: 15679.10, writes\/s: 4480.20, response time: 9.84ms (99%)<br \/>\n[  40s] threads: 8, tps: 1114.20, reads\/s: 15599.39, writes\/s: 4456.30, response time: 9.90ms (99%)<br \/>\n[  50s] threads: 8, tps: 1114.00, reads\/s: 15593.60, writes\/s: 4456.70, response time: 9.84ms (99%)<br \/>\n[  60s] threads: 8, tps: 1119.30, reads\/s: 15671.60, writes\/s: 4476.50, response time: 9.99ms (99%)<br \/>\nOLTP test statistics:<br \/>\n    queries performed:<br \/>\n        read:                            938224    &#8212; \u8bfb\u603b\u6570<br \/>\n        write:                           268064    &#8212; \u5199\u603b\u6570<br \/>\n        other:                           134032    &#8212; \u5176\u4ed6\u64cd\u4f5c\u603b\u6570(SELECT,INSERT,UPDATE,DELETE\u4e4b\u5916\u7684\u64cd\u4f5c,\u4f8b\u5982COMMIT\u7b49)<br \/>\n        total:                           1340320   &#8212; \u5168\u90e8\u603b\u6570<br \/>\n    transactions:                        67016  (1116.83 per sec.)    &#8212; \u603b\u4e8b\u52a1\u6570(\u6bcf\u79d2\u4e8b\u52a1\u6570)<br \/>\n    deadlocks:                           0      (0.00 per sec.)       &#8212; \u53d1\u751f\u6b7b\u9501\u603b\u6570<br \/>\n    read\/write requests:                 1206288 (20103.01 per sec.)  &#8212; \u8bfb\u5199\u603b\u6570(\u6bcf\u79d2\u8bfb\u5199\u6b21\u6570)<br \/>\n    other operations:                    134032 (2233.67 per sec.)    &#8212; \u5176\u4ed6\u64cd\u4f5c\u603b\u6570(\u6bcf\u79d2\u5176\u4ed6\u64cd\u4f5c\u6b21\u6570)<\/p>\n<p>General statistics:  &#8212; \u4e00\u4e9b\u7edf\u8ba1\u7ed3\u679c<br \/>\n    total time:                          60.0053s   &#8212; \u603b\u8017\u65f6<br \/>\n    total number of events:              67016      &#8212; \u5171\u53d1\u751f\u591a\u5c11\u4e8b\u52a1\u6570<br \/>\n    total time taken by event execution: 479.8171s  &#8212; \u6240\u6709\u4e8b\u52a1\u8017\u65f6\u76f8\u52a0(\u4e0d\u8003\u8651\u5e76\u884c\u56e0\u7d20)<br \/>\n    response time:    &#8212; \u54cd\u5e94\u65f6\u957f\u7edf\u8ba1<br \/>\n         min:                                  4.27ms    &#8212; \u6700\u5c0f\u8017\u65f6<br \/>\n         avg:                                  7.16ms    &#8212; \u5e73\u5747\u8017\u65f6<br \/>\n         max:                                 13.80ms    &#8212; \u6700\u957f\u8017\u65f6<br \/>\n         approx.  99 percentile:               9.88ms    &#8212; \u8d85\u8fc799%\u5e73\u5747\u8017\u65f6<\/p>\n<p>Threads fairness:<br \/>\n    events (avg\/stddev):           8377.0000\/44.33<br \/>\n    execution time (avg\/stddev):   59.9771\/0.00<\/p>\n<p>tpcc-mysql\u7684\u4ecb\u7ecd\u53ca\u4f7f\u7528<br \/>\n1.tpcc-mysql\u7b80\u4ecb:<br \/>\n    1.TPC-C\u662f\u4e13\u95e8\u9488\u5bf9\u8054\u673a\u4ea4\u6613\u5904\u7406\u7cfb\u7edf(OLTP\u7cfb\u7edf)\u7684\u89c4\u8303,\u4e00\u822c\u60c5\u51b5\u4e0b\u6211\u4eec\u4e5f\u628a\u8fd9\u7c7b\u7cfb\u7edf\u79f0\u4e3a\u4e1a\u52a1\u5904\u7406\u7cfb\u7edf;<br \/>\n    2.tpcc-mysql\u662fpercona\u57fa\u4e8eTPC-C(\u4e0b\u9762\u7b80\u5199\u6210TPCC)\u884d\u751f\u51fa\u6765\u7684\u4ea7\u54c1,\u4e13\u7528\u4e8eMySQL\u57fa\u51c6\u6d4b\u8bd5;<br \/>\n    3.tpcc-mysql\u901a\u8fc7\u6a21\u62df\u4e00\u4e2a\u7535\u5546\u7684\u4e1a\u52a1,\u4e3b\u8981\u5305\u542b\u7684\u4e1a\u52a1\u6709\u65b0\u589e\u8ba2\u5355,\u5e93\u5b58\u67e5\u8be2,\u53d1\u8d27,\u652f\u4ed8\u7b49\u6a21\u5757\u7684\u6d4b\u8bd5,\u7528\u6765\u6d4b\u8bd5\u5178\u578b\u7684\u590d\u6742OLTP\u7cfb\u7edf\u7684\u6027\u80fd;<br \/>\n    4.\u5176\u6e90\u7801\u653e\u5728launchpad\u4e0a,\u7528bazaar\u7ba1\u7406,\u9879\u76ee\u5730\u5740:https:\/\/code.launchpad.net\/~percona-dev\/perconatools\/tpcc-mysql;<br \/>\n2.\u5b89\u88c5:<br \/>\n    1.\u89e3\u538b\u7f29:gunzip tpcc-mysql-src.tgz;tar -xvf tpcc-mysql-src.tar;<br \/>\n    2.\u5b89\u88c5:cd \/path\/tpcc-mysql\/src; make; \u4e4b\u540e\u4f1a\u5728\/path\/tpcc-mysql\u76ee\u5f55\u4e0b\u751f\u6210\u4e24\u4e2atpcc \u547d\u4ee4\u884c\u5de5\u5177:tpcc_load,tpcc_start;<br \/>\n        1.tpcc_load:\u63d0\u4f9b\u521d\u59cb\u5316\u6570\u636e\u7684\u529f\u80fd;<br \/>\n        2.tpcc_start:\u8fdb\u884c\u538b\u529b\u6d4b\u8bd5;<br \/>\n    3.\u79fb\u52a8\u5de5\u5177\u4f4d\u7f6e:mv \/tools\/tpcc-mysql\/tpcc_start \/tools\/tpcc-mysql\/tpcc_load \/usr\/local\/bin\/;<br \/>\n3.\u67e5\u770b\u5e2e\u52a9:<br \/>\n    1.tpcc_load &#8211;help:<br \/>\n        usage: tpcc_load [server] [DB] [user] [pass] [warehouse]<br \/>\n      OR<br \/>\n        tpcc_load [server] [DB] [user] [pass] [warehouse] [part] [min_wh] [max_wh]<\/p>\n<p>           * [part]: 1=ITEMS 2=WAREHOUSE 3=CUSTOMER 4=ORDERS<br \/>\n        1.Server:\u670d\u52a1\u5668\u540d;<br \/>\n        2.DB:\u6570\u636e\u5e93\u540d;<br \/>\n        3.user:\u7528\u6237\u540d;<br \/>\n        4.pass:\u5bc6\u7801;<br \/>\n        5.warehouse:\u6d4b\u8bd5\u5e93\u4e0b\u4ed3\u5e93\u7684\u6570\u91cf;<br \/>\n        6.part:tpcc_load\u5176\u5b9e\u662f\u53ef\u4ee5\u5e76\u884c\u52a0\u8f7d\u7684,\u53ef\u4ee5\u533a\u5206ITEMS\/WAREHOUSE\/CUSTOMER\/ORDERS\u56db\u4e2a\u7ef4\u5ea6\u7684\u6570\u636e\u5e76\u884c\u52a0\u8f7d(github\u4e0a\u5df2\u7ecf\u5b9e\u73b0\u7684\u5e76\u884c\u52a0\u8f7d\u7684\u9879\u76eetpcc_load_parallel.sh:https:\/\/gist.github.com\/sh2\/3458844);<br \/>\n    2.tpcc_start &#8211;help:<br \/>\n        Usage: tpcc_start -h server_host -P port -d database_name -u mysql_user -p mysql_password -w warehouses -c connections -r warmup_time -l running_time -i report_interval -f report_file -t trx_file<br \/>\n        1.-h server_host:\u670d\u52a1\u5668\u540d;<br \/>\n        2.-P port:\u7aef\u53e3\u53f7,\u9ed8\u8ba4\u4e3a3306;<br \/>\n        3.-d database_name:\u6570\u636e\u5e93\u540d;<br \/>\n        4.-u mysql_user:\u7528\u6237\u540d;<br \/>\n        5.-p mysql_password:\u5bc6\u7801;<br \/>\n        6.-w warehouses:\u4ed3\u5e93\u7684\u6570\u91cf;<br \/>\n        7.-c connections:\u7ebf\u7a0b\u6570,\u9ed8\u8ba4\u4e3a1;<br \/>\n        8.-r warmup_time:\u9884\u70ed\u65f6\u95f4,\u9884\u70ed\u662f\u4e3a\u4e86\u5c06\u6570\u636e\u52a0\u8f7d\u5230\u5185\u5b58,\u5355\u4f4ds,\u9ed8\u8ba4\u4e3a10s;<br \/>\n        9.-l running_time:\u6d4b\u8bd5\u65f6\u95f4,\u5355\u4f4ds,\u9ed8\u8ba4\u4e3a20s;<br \/>\n        10.-i report_interval:\u6307\u5b9a\u751f\u6210\u62a5\u544a\u95f4\u9694\u65f6\u957f;<br \/>\n        11.-f report_file:\u6d4b\u8bd5\u7ed3\u679c\u8f93\u51fa\u6587\u4ef6;<br \/>\n        12.-t trx_file:\u4e8b\u52a1\u6587\u4ef6;<br \/>\n4.\u6d4b\u8bd5\u524d\u51c6\u5907\u5de5\u4f5c:<br \/>\n    1.\u521b\u5efa\u6d4b\u8bd5\u6570\u636e\u5e93:mysql -uroot -p -e &#8220;CREATE DATABASE tpcc&#8221;;<br \/>\n    2.\u521b\u5efa\u8868:mysql -uroot -p tpcc < \/tools\/tpcc-mysql\/create_table.sql;\n    3.\u6dfb\u52a0\u5916\u952e:mysql -uroot -p tpcc < \/tools\/tpcc-mysql\/add_fkey_idx.sql;\n    4.\u67e5\u770btpcc-mysql\u7684\u4e1a\u52a1\u903b\u8f91\u53ca\u5176\u76f8\u5173\u7684\u51e0\u4e2a\u8868\u4f5c\u7528\u5982\u4e0b:\n        1.customer:\u5ba2\u6237\u8868;\n        2.district:\u5730\u533a\u8868;\n        3.history:\u652f\u4ed8\u4fe1\u606f\u8868;\n        4.item:\u5546\u54c1\u4fe1\u606f\u8868;\n        5.new_orders:\u65b0\u8ba2\u5355\u8868,\u5176\u5b83\u4fe1\u606f\u8fd8\u662f\u5b58\u5728orders\u8868\u4e2d;\n        6.order_line:\u53d1\u8d27\u4fe1\u606f\u8868;\n        7.orders:\u8ba2\u5355\u8868;\n        8.stock:\u5e93\u5b58\u4fe1\u606f\u8868;\n        9.warehouse:\u4ed3\u5e93\u8868;\n5.\u6d4b\u8bd5:\n    1.\u5355\u8fdb\u7a0b\u52a0\u8f7d\u6570\u636e:tpcc_load localhost tpcc root \"\" 5;\n    2.\u5bf95\u4e2a\u6570\u636e\u4ed3\u5e93,\u9884\u70ed10\u79d2,100\u4e2a\u5e76\u53d1\u8fde\u63a5,\u8fd0\u884c60\u79d2:tpcc_start -h localhost -d tpcc -u root -p \"\" -w 5 -c 100 -r 10 -l 60  -i 10 -f rpt_tpcc -t tr;\n6.\u4e0d\u8db3:\n    1.\u6ca1\u6709\u81ea\u589e\u5217\u4f5c\u4e3a\u4e3b\u952e:\u5982\u679c\u4ec5\u4f5c\u4e3a\u57fa\u51c6\u6d4b\u8bd5\u95ee\u9898\u4e0d\u5927,\u4f46\u548c\u6211\u4eec\u5b9e\u9645\u751f\u4ea7\u4e2d\u7684\u8bbe\u8ba1\u6a21\u5f0f\u53ef\u80fd\u6709\u4e00\u5b9a\u533a\u522b,\u76f8\u4fe1\u5927\u591a\u6570\u4eba\u8fd8\u662f\u4e60\u60ef\u4f7f\u7528\u81ea\u589e\u5217\u4f5c\u4e3a\u4e3b\u952e\u7684;\n    2.\u4f7f\u7528\u5916\u952e:\u4e2a\u4eba\u8ba4\u4e3aMySQL\u5bf9\u5916\u952e\u652f\u6301\u5e76\u4e0d\u662f\u592a\u597d,\u5e76\u4e14\u4e00\u5b9a\u7a0b\u5ea6\u4e0a\u5f71\u54cd\u5e76\u53d1\u6027\u80fd,\u56e0\u6b64\u5efa\u8bae\u53d6\u6d88\u5916\u952e,\u4ec5\u4fdd\u7559\u4e00\u822c\u7684\u7d22\u5f15;\n7.\u5176\u5b83:\n    1.\u771f\u5b9e\u6d4b\u8bd5\u573a\u666f\u4e2d,\u4ed3\u5e93\u6570\u4e00\u822c\u4e0d\u5efa\u8bae\u5c11\u4e8e100\u4e2a;\u89c6\u670d\u52a1\u5668\u786c\u4ef6\u914d\u7f6e\u800c\u5b9a,\u5982\u679c\u662f\u914d\u5907\u4e86SSD\u6216\u8005PCIE SSD\u8fd9\u79cd\u9ad8IOPS\u8bbe\u5907\u7684\u8bdd,\u5efa\u8bae\u6700\u5c11\u4e0d\u4f4e\u4e8e1000\u4e2a;\n    2.\u771f\u5b9e\u6d4b\u8bd5\u573a\u666f\u4e2d,\u5efa\u8bae\u9884\u70ed\u65f6\u95f4\u4e0d\u5c0f\u4e8e5\u5206\u949f,\u6301\u7eed\u538b\u6d4b\u65f6\u957f\u4e0d\u5c0f\u4e8e30\u5206\u949f,\u5426\u5219\u6d4b\u8bd5\u6570\u636e\u53ef\u80fd\u4e0d\u5177\u53c2\u8003\u610f\u4e49;\n    3.\u9700\u8981\u6ce8\u610f\u7684\u662ftpcc\u9ed8\u8ba4\u4f1a\u8bfb\u53d6\/var\/lib\/mysql\/mysql.sock\u8fd9\u4e2asocket\u6587\u4ef6,\u5982\u679c\u4f60\u7684socket\u6587\u4ef6\u4e0d\u5728\u76f8\u5e94\u8def\u5f84\u7684\u8bdd,\u53ef\u4ee5\u505a\u4e2a\u8f6f\u8fde\u63a5;\u6216\u8005\u901a\u8fc7TCP\/IP\u7684\u65b9\u5f0f\u8fde\u63a5\u6d4b\u8bd5\u670d\u52a1\u5668;\n    4.script\u76ee\u5f55\u4e0b\u7684\u4e00\u4e9b\u811a\u672c\u4e3b\u8981\u662f\u4e00\u4e9b\u6027\u80fd\u6570\u636e\u91c7\u96c6\u4ee5\u53ca\u5206\u6790\u7684;\n    5.\u53ef\u4ee5\u4f7f\u7528gunpolt\u5de5\u5177\u753b\u56fe;\n\n-- \u6d4b\u8bd5\u7ed3\u679c\u89e3\u8bfb;\n[root@ocp ~]# tpcc_start -h localhost -d tpcc -u root -p \"\" -w 5 -c 100 -r 10 -l 60  -i 10 -f rpt_tpcc -t tr;\n***************************************\n*** ###easy### TPC-C Load Generator ***\n***************************************\noption h with value 'localhost'\noption d with value 'tpcc'\noption u with value 'root'\noption p with value ''\noption w with value '5'\noption c with value '100'\noption r with value '10'\noption l with value '60'\noption i with value '10'\noption f with value 'rpt_tpcc'\noption t with value 'tr'\n<Parameters><br \/>\n     [server]: localhost<br \/>\n     [port]: 3306<br \/>\n     [DBname]: tpcc<br \/>\n       [user]: root<br \/>\n       [pass]:<br \/>\n  [warehouse]: 5<br \/>\n [connection]: 100<br \/>\n     [rampup]: 10 (sec.)<br \/>\n    [measure]: 60 (sec.)<\/p>\n<p>RAMP-UP TIME.(10 sec.)<\/p>\n<p>&#8212; \u9884\u70ed\u7ed3\u675f,\u5f00\u59cb\u8fdb\u884c\u538b\u6d4b;<br \/>\nMEASURING START.<\/p>\n<p>&#8212; \u4e3a\u4e86\u80fd\u591f\u6e05\u6670\u7684\u8bf4\u660e\u4ee5\u4e0b\u5185\u5bb9,\u9996\u5148\u5b9a\u4e49\u4e00\u4e9b\u53d8\u91cf,\u4fbf\u4e8e\u4ee5\u4e0b\u7684\u8ba1\u7b97\u548c\u8bf4\u660e:<br \/>\n    1.success:\u6267\u884c\u6210\u529f\u7684\u8bb0\u5f55\u6570;<br \/>\n    2.late:\u6267\u884c\u5ef6\u8fdf\u7684\u8bb0\u5f55\u6570;<br \/>\n    3.pre_success:\u4e0a\u4e00\u6b21\u6267\u884c\u6210\u529f\u7684\u8bb0\u5f55\u6570;<br \/>\n    4.pre_late:\u4e0a\u4e00\u6b21\u6267\u884c\u5931\u8d25\u7684\u8bb0\u5f55\u6570;<\/p>\n<p>&#8212; \u6839\u636e\u4ee5\u4e0a\u5b9a\u4e49\u7684\u53d8\u91cf,\u8ba1\u7b97\u76f8\u5e94\u5b57\u6bb5\u7684\u7ed3\u679c\u548c\u8bf4\u660e\u76f8\u5e94\u5b57\u6bb5\u7684\u542b\u4e49:<br \/>\n    1.\u65f6\u95f4\u95f4\u9694\u5185\u6210\u529f\u7684\u4e8b\u52a1(\u5305\u62ec\u6210\u529f\u548c\u5ef6\u8fdf\u7684\u4e8b\u52a1):sl=success+late-pre_success-pre_late;<br \/>\n    2.\u65f6\u95f4\u95f4\u9694\u5185\u5ef6\u8fdf\u7684\u4e8b\u52a1:l=late-pre_late;<br \/>\n    3.\u65f6\u95f4\u95f4\u9694\u5185\u524d90%\u8bb0\u5f55(\u5b9e\u9645\u4e3a99%)\u7684\u5e73\u5747\u54cd\u5e94\u65f6\u95f4:rt90;<br \/>\n    4.\u65f6\u95f4\u95f4\u9694\u5185\u6700\u5927\u7684\u54cd\u5e94\u65f6\u95f4:max_rt;<\/p>\n<p>&#8212; Count   New-Order            Payment         Order-Status        Delivery            Stock-Level<br \/>\n&#8212; #,  sl(l):rt90|max_rt , sl(l):rt90|max_rt ,  sl(l):rt90|max_rt, sl(l):rt90|max_rt,  sl(l):rt90|max_rt<br \/>\n&#8212; \u65b0\u8ba2\u5355\u6210\u529f\u6267\u884c\u538b\u6d4b\u7684\u6b21\u6570(\u63a8\u8fdf\u6267\u884c\u538b\u6d4b\u7684\u6b21\u6570):90%\u4e8b\u52a1\u7684\u54cd\u5e94\u65f6\u95f4|\u672c\u8f6e\u6d4b\u8bd5\u6700\u5927\u54cd\u5e94\u65f6\u95f4;<\/p>\n<p>  10, 485(0):2.431|3.536, 505(0):0.709|1.550, 49(0):0.331|0.363, 48(0):3.061|3.162, 49(0):5.823|6.181<br \/>\n  20, 511(0):2.544|3.928, 517(0):0.813|1.757, 52(0):0.204|0.235, 52(0):2.543|2.725, 52(0):5.964|6.062<br \/>\n  30, 516(0):2.109|3.152, 510(0):0.493|1.421, 51(0):0.257|0.415, 50(0):2.684|2.855, 51(0):5.783|5.875<br \/>\n  40, 480(2):3.008|8.578, 479(0):1.688|1.882, 47(0):0.241|2.038, 47(0):2.869|3.197, 48(0):6.349|6.550<br \/>\n  50, 478(1):2.926|10.509, 481(0):1.080|1.795, 48(0):0.406|1.721, 47(0):2.810|2.877, 48(0):6.247|7.598<br \/>\n  60, 434(4):3.783|7.095, 426(0):1.258|1.724, 44(0):0.398|1.789, 45(0):3.080|3.604, 45(0):7.136|8.169<\/p>\n<p>&#8212; \u538b\u6d4b\u7ed3\u675f;<br \/>\nSTOPPING THREADS&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;.<\/p>\n<p>&#8212; \u7b2c\u4e00\u6b21\u7ed3\u679c\u7edf\u8ba1;<br \/>\n&#8212; \u6210\u529f(success,sc)\u6b21\u6570,\u5ef6\u8fdf(late,lt)\u6b21\u6570,\u91cd\u8bd5(retry,rt)\u6b21\u6570,\u5931\u8d25(failure,fl)\u6b21\u6570;<br \/>\n<raw Results><br \/>\n  [0] sc:2897  lt:7  rt:0  fl:0        &#8212; New-Order:\u65b0\u8ba2\u5355\u4e1a\u52a1;<br \/>\n  [1] sc:2918  lt:0  rt:0  fl:0        &#8212; Payment:\u652f\u4ed8\u4e1a\u52a1\u7edf\u8ba1;<br \/>\n  [2] sc:291  lt:0  rt:0  fl:0         &#8212; Order-Status:\u8ba2\u5355\u72b6\u6001\u4e1a\u52a1\u7edf\u8ba1;<br \/>\n  [3] sc:289  lt:0  rt:0  fl:0         &#8212; Delivery:\u53d1\u8d27\u4e1a\u52a1\u7edf\u8ba1;<br \/>\n  [4] sc:293  lt:0  rt:0  fl:0         &#8212; Stock-Level:\u5e93\u5b58\u4e1a\u52a1\u7edf\u8ba1;<br \/>\n in 60 sec.<\/p>\n<p>&#8212; \u7b2c\u4e8c\u6b21\u7edf\u8ba1\u7ed3\u679c;<br \/>\n<\/raw><raw Results2(sum ver.)><br \/>\n  [0] sc:2897  lt:7  rt:0  fl:0<br \/>\n  [1] sc:2918  lt:0  rt:0  fl:0<br \/>\n  [2] sc:291  lt:0  rt:0  fl:0<br \/>\n  [3] sc:289  lt:0  rt:0  fl:0<br \/>\n  [4] sc:293  lt:0  rt:0  fl:0<\/p>\n<p>&#8212; \u4e0b\u9762\u6240\u6709\u4e1a\u52a1\u903b\u8f91\u7ed3\u679c\u90fd\u5fc5\u987b\u4e3aOK\u624d\u884c;<br \/>\n<constraint Check> (all must be [OK])<br \/>\n [transaction percentage]<br \/>\n        Payment: 43.58% (>=43.0%) [OK] &#8212; \u652f\u4ed8\u6210\u529f\u6b21\u6570(sc + lt)\u5fc5\u987b\u5927\u4e8e43.0%,\u5426\u5219\u7ed3\u679c\u4e3aNG,\u800c\u4e0d\u662fOK;<br \/>\n   Order-Status: 4.35% (>= 4.0%) [OK]<br \/>\n       Delivery: 4.32% (>= 4.0%) [OK]<br \/>\n    Stock-Level: 4.38% (>= 4.0%) [OK]<\/p>\n<p>&#8212; \u54cd\u5e94\u8017\u65f6\u6307\u6807\u5fc5\u987b\u8d85\u8fc790%\u901a\u8fc7\u624d\u884c;<br \/>\n [response time (at least 90% passed)]<br \/>\n      New-Order: 99.76%  [OK]<br \/>\n        Payment: 100.00%  [OK]<br \/>\n   Order-Status: 100.00%  [OK]<br \/>\n       Delivery: 100.00%  [OK]<br \/>\n    Stock-Level: 100.00%  [OK]<\/p>\n<p><tpmc><br \/>\n                 2904.000 TpmC<br \/>\n&#8212; TpmC\u7ed3\u679c\u503c(\u6bcf\u5206\u949f\u4e8b\u52a1\u6570,\u8be5\u503c\u662f\u7b2c\u4e00\u6b21\u7edf\u8ba1\u7ed3\u679c\u4e2d\u7684\u65b0\u8ba2\u5355\u4e8b\u52a1\u6570\u9664\u4ee5\u603b\u8017\u65f6\u5206\u949f\u6570,eg:(2897+7)\/1 = 2904.000;<\/tpmc><\/constraint><\/raw><\/path><\/test><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e3b\u8981\u5185\u5bb9: 1.MySQL\u538b\u529b\u6d4b\u8bd5\u57fa\u51c6\u503c; 2.mysqlslap\u7684\u4ecb\u7ecd\u53ca\u4f7f\u7528; 3.sysbench\u7684\u4ecb\u7ecd\u53ca [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21],"tags":[27],"class_list":["post-1095","post","type-post","status-publish","format-standard","hentry","category-mysql","tag-mysql"],"_links":{"self":[{"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/posts\/1095","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1095"}],"version-history":[{"count":1,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/posts\/1095\/revisions"}],"predecessor-version":[{"id":1096,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/posts\/1095\/revisions\/1096"}],"wp:attachment":[{"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1095"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1095"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1095"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}