美团点评SQL优化工具SQLAdvisor安装和使用

  

SQLAdvisor 详细介绍

SQLAdvisor是由美团点评公司北京DBA团队开发维护的SQL优化工具:。它基于MySQL原生词法解析,再结合SQL中地方的条件以及字段选择度,聚合条件,多表连接关系等最终输出最优的索引优化建议。

美团点评SQL优化工具SQLAdvisor安装和使用“> </p> <p> <br/> </p> <h4> </h4> <pre类=癱ke_widget_element hljs SQL”> SQL:, SELECT  id 得到crm_loan  WHERE  id_card =, ' 1234567 'cmd:,。/SQLAdvisor  -h  xx  -P  xx  -u  xx  -pxx  -d  xx  -q “SELECT  id 得到crm_loan  WHERE  id_card =,‘1234567’”SQLAdvisor输出:,alter  table  crm_loan  add  index  idx_id_card (id_card) </pre> <p> </p> <h4>特性:</h4> <ul类= <李>

基于MySQL原生词法解析,充分保证词法解析的性能,准确定以及稳定性;

<李>

支持常见的SQL(插入/删除/更新/选择);

<李>

支持多表连接并自动逻辑选定驱动表;

<李>

支持聚合条件Order by和Group by;

<李>

过滤表中已存在的索引。




1。SQLAdvisor安装

1.1拉取最新代码
 git  clone  https://github.com/Meituan-Dianping/SQLAdvisor.git 
1.2安装依赖项
<>之前,1只yum  |, apt-get , install  cmake  libaio-devel  libffi-devel  glib2  glib2-devel   ,2只yum  |, apt-get , install ——enablerepo=Percona56  Percona-Server-shared-56

<李>

跟据glib安装的路径,修改SQLAdvisor/SQLAdvisor/CMakeLists。txt中的两处include_directories针对glib设置的path.glib百胜安装默认不需要修改路径

<李>

编译sqladvisor时依赖perconaserverclient_r,因此需要安装Percona-Server-shared-56。有可能需要配置软链接例如:1。cd/usr/lib64/2。ln - s libperconaserverclient_r.so。18 libperconaserverclient_r。所以

<李>

有可能需要配置percona56百胜源:百胜install  http://www.percona.com/downloads/percona - release/redhat/0.1 3/percona -释放- 0.1 - 3. - noarch.rpm

1.3编译依赖项sqlparser
<>之前1只cmake  -DBUILD_CONFIG=mysql_release  -DCMAKE_BUILD_TYPE=debug  -DCMAKE_INSTALL_PREFIX=/usr/地方/sqlparser 。/2只;make ,,, make 安装

<李>

DCMAKE_INSTALL_PREFIX为sqlparser库文件和头文件的安装目录,其中自由目录包含库文件libsqlparser。所以,包括目录包含所需的所有头文件。

<李>

DCMAKE_INSTALL_PREFIX值尽量不要修改,后面安装依赖这个目录。

1.4安装SQLAdvisor源码
<>之前1只cd  SQLAdvisor/SQLAdvisor/2只;cmake  -DCMAKE_BUILD_TYPE=debug 。/3只;   4只在本路径下生成一个sqladvisor可执行文件,这即是我们想要的。

2。SQLAdvisor使用

2.1——帮助输出
。/sqladvisor ——帮助
  用法:
  sqladvisor 才能;[…]选项,sqladvisor
  
  SQL  Advisor 总结
  
  Help 选项:
  ,,,?——help ,,,,,,,,,,,,, Show  help 选项
  
  Application 选项:
  ,,- f,——defaults-file ,,,, sqls 文件
  ,,- u,——username ,,,,,,,,,用户名
  ,,- p,——password ,,,,,,,,,密码
  ,,- p,——port ,,,,,,,,,,,,,端口
  ,,- h,——host ,,,,,,,,,,,,,主机
  ,,- d,——dbname ,,,,,,,,,,, database 名字
  ,,q,——sqls ,,,,,,,,,,,,中的
  - v,才能,——verbose ,,,,,,,,,, 1: output  logs  0: output 没有
2.2命令行传参调用
。/sqladvisor  -h  xx , -P  xx , -u  xx  -P “xx”, -d  xx  -q “sql”, -v  1 
<编辑>注意:命令行传参时,参数名与值需要用空格隔开
2.3配置文件传参调用
<>以前美元祝辞cat  sql.cnf   (sqladvisor)   用户名=xx   密码=xx   主机=xx   端口=xx   dbname=xx   sqls=sql1; sql2 sql3 ....      cmd:,。/sqladvisor  -f  sql.cnf , -v  1

软件下载地址:http://v7.51cto.com/change.php?path=/wyfs02/M00/8E/A4/wKioL1jHsrPhSztyAavyE-3DdHk359.zip& skey=JgvctLUHe_6JK8VxuSm6CQ&少许=1489482991,sname=51 cto % E4%B8 % 8 b % E8%BD % BD-SQLAdvisor-master.zip


美团点评SQL优化工具SQLAdvisor安装和使用