阿里云RDS数据库常用SQL语句分享,阿里云rds数据库阿里云RDS数据库常用SQL语句分享日常工作或学习过程中,会常用到某些SQL语句,又不太容易记忆的。建议大家多多整理记录下这些常用的SQL,这样后续用到会方便很多。我在工作及学习过程中也整理了下个人常用的SQL,现在借云栖社区这个平台分享给大家。可能有些SQL你还......
日常工作或学习过程中,会常用到某些SQL语句,又不太容易记忆的。建议大家多多整理记录下这些常用的SQL,这样后续用到会方便很多。我在工作及学习过程中也整理了下个人常用的SQL,现在借云栖社区这个平台分享给大家。可能有些SQL你还不常用,但还是希望有所帮助,说不定将来哪天有需求就能用到。
注:下文分享的SQL适用于MySQL 5.7 版本,低版本可能稍许不同。有些SQL可能执行需要较高权限。都在阿里云RDS数据库中使用过,没问题了。
查看实例参数 例如:
showvariableslike%innodb%;showglobalvariableslike%innodb%;查看实例状态,例如:
showstatuslikeuptime%;showglobalstatuslikeconnection%;查看数据库链接:
showprocesslist;showfullprocesslist;查询某个表的结构:
showcreatetabletbname;查询某个表的详细字段信息:
showfullcolumnsfromtbname;查询某个表的全部索引信息:
showindexfromtbname;查询某个库以cd开头的表:
showtableslikecd%;查询某个库中的所有视图:
showtablestatuswherecomment=view;查询某个用户的权限:
showgrantsfortestuser@%;这里先介绍下CONCAT函数:在MySQL中 CONCAT()函数用于将多个字符串连接成一个字符串,
利用此函数我们可以将原来一步无法得到的sql拼接出来,后面部分语句有用到该函数。
当拼接字符串中出现时 需使用转义符
查看所有用户名:
SELECTDISTINCTCONCAT(User:,user,@,host,;)ASQUERYFROMmysql.user;查看用户详细信息:
SELECTuser,host,authenticationstring,passwordexpired,passwordlifetime,passwordlastchanged,accountlockedFROMmysql.user;下面列举SQL只是拼接出kill 链接的语句,若想执行 直接将结果复制执行即可。
杀掉空闲时间大于2000s的链接:
SELECTconcat(KILL,id,;)FROMinformationschema.PROCESSLISTWHERECommand=SleepANDTIME2000;杀掉处于某状态的链接:
SELECTconcat(KILL,id,;)FROMinformationschema.PROCESSLISTWHERESTATELIKECreatingsortindex;杀掉某个用户的链接:
SELECTconcat(KILL,id,;)FROMinformationschema.PROCESSLISTWHEREwhereuser=root;下面列举SQL只是拼接出kill 链接的语句,若想执行 直接将结果复制执行即可。
杀掉空闲时间大于2000s的链接:
SELECTconcat(KILL,id,;)FROMinformationschema.PROCESSLISTWHERECommand=SleepANDTIME2000;杀掉处于某状态的链接:
SELECTconcat(KILL,id,;)FROMinformationschema.PROCESSLISTWHERESTATELIKECreatingsortindex;杀掉某个用户的链接:
SELECTconcat(KILL,id,;)FROMinformationschema.PROCESSLISTWHEREwhereuser=root;查看整个实例占用空间大小:
SELECTconcat(round(sum(datalength/1024/1024),2),MB)ASdatalengthMB,concat(round(sum(indexlength/1024/1024),2),MB)ASindexlengthMBFROMinformationschema.TABLES;查看各个库占用大小:
SELECTTABLESCHEMA,concat(TRUNCATE(sum(datalength)/1024/1024,2),MB)ASdatasize,concat(TRUNCATE(sum(indexlength)/1024/1024,2),MB)ASindexsizeFROMinformationschema.TABLESGROUPBYTABLESCHEMA;查看单个库占用空间大小:
SELECTconcat(round(sum(datalength/1024/1024),2),MB)ASdatalengthMB,concat(round(sum(indexlength/1024/1024),2),MB)ASindexlengthMBFROMinformationschema.TABLESWHEREtableschema=testdb;查看单个表占用空间大小:
SELECTconcat(round(sum(datalength/1024/1024),2),MB)ASdatalengthMB,concat(round(sum(indexlength/1024/1024),2),MB)ASindexlengthMBFROMinformationschema.TABLESWHEREtableschema=testdbANDtablename=tbname;查看某个库下所有表的碎片情况:
SELECTt.TABLESCHEMA,t.TABLENAME,t.TABLEROWS,concat(round(t.DATALENGTH/1024/1024,2),M)ASsize,t.INDEXLENGTH,concat(round(t.DATAFREE/1024/1024,2),M)ASdatafreeFROMinformationschema.TABLEStWHEREt.TABLESCHEMA=testdbORDERBYdatafreeDESC;收缩表,减少碎片:
altertabletbnameengine=innodb;optimizetabletbname;查看某个库下所有表的碎片情况:
SELECTt.TABLESCHEMA,t.TABLENAME,t.TABLEROWS,concat(round(t.DATALENGTH/1024/1024,2),M)ASsize,t.INDEXLENGTH,concat(round(t.DATAFREE/1024/1024,2),M)ASdatafreeFROMinformationschema.TABLEStWHEREt.TABLESCHEMA=testdbORDERBYdatafreeDESC;收缩表,减少碎片:
altertabletbnameengine=innodb;optimizetabletbname;特别声明:以上文章内容仅代表作者本人观点,不代表ESG跨境电商观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与ESG跨境电商联系。
二维码加载中...
使用微信扫一扫登录
使用账号密码登录
平台顾问
微信扫一扫
马上联系在线顾问
小程序
ESG跨境小程序
手机入驻更便捷
返回顶部