关于mysql数据占用CPU高的问题,命令SHOW FULL COLUMNS FROM
来源:互联网 发布:pdf.js使用方法 编辑:程序博客网 时间:2024/05/16 11:52
今天为了给性能测试准备数据,信息管理提供了造数据的工具,跑起来之后,mysql的CPU直接用完,各种SQL由于执行时间都很长。
通过workbench监控,发现链接大量在执行SHOW FULL COLUMNS FROM命令。
一开始怀疑是因为使用了select * 造成的,修改代码以后,制定了每个列名,问题依旧。
后来根据JAVA进程的堆栈看到,这个命令可能是mysql的JDBC驱动程序发送的:
"Thread-12" prio=10 tid=0x0000000046a45000 nid=0x4af9 runnable [0x00000000405ba000] java.lang.Thread.State: RUNNABLE at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(SocketInputStream.java:129) at com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:114) at com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:161) at com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:189) - locked <0x00002aaab686f2c8> (a com.mysql.jdbc.util.ReadAheadInputStream) at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:3116) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3570) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3559) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4110) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2570) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2731) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2809) - locked <0x00002aaab68642f0> (a com.mysql.jdbc.JDBC4Connection) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2758) at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1612) - locked <0x00002aaab68642f0> (a com.mysql.jdbc.JDBC4Connection) at com.mysql.jdbc.Field.getCollation(Field.java:493) - locked <0x00002aab1810c308> (a com.mysql.jdbc.Field) at com.mysql.jdbc.ResultSetMetaData.isCaseSensitive(ResultSetMetaData.java:567) at com.sun.rowset.CachedRowSetImpl.initMetaData(CachedRowSetImpl.java:704) at com.sun.rowset.CachedRowSetImpl.populate(CachedRowSetImpl.java:621)
下载了com.sun.rowset.CacheRowSetImple的源码:
for (int col=1; col <= numCols; col++) { md.setAutoIncrement(col, rsmd.isAutoIncrement(col)); if(rsmd.isAutoIncrement(col)) updateOnInsert = true; md.setCaseSensitive(col, rsmd.isCaseSensitive(col)); md.setCurrency(col, rsmd.isCurrency(col)); md.setNullable(col, rsmd.isNullable(col)); md.setSigned(col, rsmd.isSigned(col)); md.setSearchable(col, rsmd.isSearchable(col));
- 关于mysql数据占用CPU高的问题,命令SHOW FULL COLUMNS FROM
- 关于mysql的cpu占用高的问题
- yii框架用ar请求数据库的时候 会出现 SHOW FULL COLUMNS FROM `xxxxx`的命令
- MySQL的show full processlist命令
- mysql show columns等show的用法
- MySQL命令show full processlist
- Mysql 占用cpu资源高的分析
- mysql占用CPU资源高的分析
- mysql cpu占用高的原因
- mysql 占用cpu特别高的解决
- VC2005的IntelliSense高CPU占用问题
- 解决java占用cpu高的问题
- mysql用户下的perl命令占用cpu高,导致系统运行缓慢
- Yii 字段缓存 SHOW FULL COLUMNS
- 关于setFont() CPU占用的问题!
- [转载]EasyRTMP调用librtmp推送RTMP数据时CPU占用高的问题调优
- Mysql CPU占用高的问题解决方法小结
- Mysql CPU占用高的问题解决方法小结
- 随便写点什么吧
- POJ2503-map
- 点到点与端到端通信有什么区别
- 化缘
- 传智播客php培训目录
- 关于mysql数据占用CPU高的问题,命令SHOW FULL COLUMNS FROM
- Object.wait()与Object.notify()的用法
- 女孩子读书到底为了什么
- android 通过一Textview设置不同大小的字体颜色
- matlab的作图
- C#中的字符串处理方法及循环语句
- ORACLE 中IN和EXISTS比较
- 全天下最经典的句子,2013重现!
- hdu 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 (多重背包)