为什么这些c3p0查询经常在mysql中运行

问题描述 投票:0回答:1

下面是c3p0hibernate配置,我正在研究以下问题。为什么这些查询连续运行,如何禁用它们。

Hibernate和c3p0配置

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.connection.driver_class">
            com.mysql.cj.jdbc.Driver
        </property>
        <property name="hibernate.connection.url">
            jdbc:mysql://localhost/?autoReconnect=true
        </property>
        <property name="current_session_context_class">thread</property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.connection.password">dpSJtjixUinCDoV4ia6yCQ==</property>
        <property name="hibernate.dialect">
            com.razorthink.runtime.RztMysqlDialect
        </property>
        <property name="hibernate.connection.provider_class" >com.virima.connectionPool.CustomConnectionProvider</property>
        <property name="hibernate.c3p0.max_size">400</property>
        <property name="hibernate.c3p0.min_size">4</property>
        <property name="hibernate.c3p0.acquire_increment">1</property>
        <property name="hibernate.c3p0.idle_test_period">300</property>
        <property name="hibernate.c3p0.max_statements">0</property>
        <property name="hibernate.c3p0.timeout">300</property>
        <property name="hibernate.c3p0.max_idle_time">2000</property>
        <property name="hibernate.c3p0.max_connection_age">6000</property>
        <property name="show_sql">false</property>
        <property name="hibernate.connection.isolation">2</property>
        <property name="hibernate.connection.CharSet">utf8</property>
        <property name="hibernate.connection.characterEncoding">utf8</property>
    <mapping resource="h915211324.hbm.xml" />

    </session-factory>
</hibernate-configuration>

导致cpu命中的查询在下面

2020-04-29T15:22:47.740540Z  5200 Query SHOW FULL TABLES FROM `emdb_1521702330190` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.740831Z  5187 Query SHOW FULL TABLES FROM `emdb_1521702330190` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.750197Z  5200 Query SHOW FULL TABLES FROM `emdb_1557220119370` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.750521Z  5187 Query SHOW FULL TABLES FROM `emdb_1557220119370` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.770292Z  5213 Query SHOW FULL TABLES FROM `emdb_1584082233309` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.775548Z  5279 Query SHOW FULL TABLES FROM `emdb_1563780179958` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.776983Z  5201 Query SHOW FULL TABLES FROM `emdb_1563780179958` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.778582Z  5234 Query SHOW FULL TABLES FROM `emdb_1584082233309` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.790130Z  5179 Query UPDATE `ta_cmdb_ci_relationships` SET target_ipaddress = '172.24.110.36',target_tags = '|8|',target_icon = null,target_location = '35 Adams Avenue',target_hostname = 'NOC-TRI-UAT-07',target_blueprint = 'Windows Server',target_ci_id=107611,target_host_ci_record_id='26e58509-a7c9-4fef-b5cf-d659a30b103e' WHERE target_id = 107611
2020-04-29T15:22:47.812510Z  5200 Query SHOW FULL TABLES FROM `emdb_1563774517358` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.812915Z  5187 Query SHOW FULL TABLES FROM `emdb_1563774517358` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.818616Z  5179 Query commit
2020-04-29T15:22:47.839903Z  5213 Query SHOW FULL TABLES FROM `information_schema` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.840200Z  5213 Query SHOW FULL TABLES FROM `management_db` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.844614Z  5213 Query SHOW FULL TABLES FROM `mysql` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.845308Z  5201 Query SHOW FULL TABLES FROM `emdb_1569887214264` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.845527Z  5279 Query SHOW FULL TABLES FROM `emdb_1569887214264` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.846760Z  5234 Query SHOW FULL TABLES FROM `information_schema` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.846970Z  5234 Query SHOW FULL TABLES FROM `management_db` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.847032Z  5213 Query SHOW FULL TABLES FROM `performance_schema` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.850979Z  5234 Query SHOW FULL TABLES FROM `mysql` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.855794Z  5213 Query SHOW FULL TABLES FROM `quartz_scheduler` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.856963Z  5234 Query SHOW FULL TABLES FROM `performance_schema` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.857565Z  5213 Query SHOW FULL TABLES FROM `sys` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.864297Z  5234 Query SHOW FULL TABLES FROM `quartz_scheduler` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.867085Z  5234 Query SHOW FULL TABLES FROM `sys` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.869482Z  5213 Query select * from ar_data
2020-04-29T15:22:47.875941Z  5187 Query SHOW FULL TABLES FROM `emdb_1563780179958` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.876417Z  5200 Query SHOW FULL TABLES FROM `emdb_1563780179958` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.877967Z  5253 Query SHOW DATABASES
2020-04-29T15:22:47.879442Z  5234 Query SHOW DATABASES
2020-04-29T15:22:47.880157Z  5253 Query SHOW FULL TABLES FROM `async_data` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.882533Z  5234 Query SHOW FULL TABLES FROM `async_data` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.901594Z  5279 Query SHOW FULL TABLES FROM `emdb_1584082233309` LIKE 'PROBABLYNOT'
2020-04-29T15:22:47.912542Z  5201 Query SHOW FULL TABLES FROM `emdb_1584082233309` LIKE 'PROBABLYNOT'
java mysql hibernate c3p0
1个回答
0
投票

因为c3p0是一个连接池,所以它需要知道连接是否仍然有效并且可以被应用程序使用。为了获取此信息,它执行测试查询以检查连接是否从另一侧未被关闭。

因此,现在一般最好删除这种机制,否则当应用程序尝试执行实际查询并且连接已经处于陈旧状态时,您会定期在日志中看到错误。

但是由于此连接测试很慢,您可以将查询更改为其他内容。 c3p0的Plz检查preferredTestQuery属性。

这里c3p0 for testing Connections taking too much time也是建议升级c3p0的版本以使此功能更好地工作。

© www.soinside.com 2019 - 2024. All rights reserved.