JNDI 리소스를 통해 tomcat 연결 풀을 사용하고 있습니다. context.xml
에서MySQL에서 쿼리 캐싱 방지
:
<Resource name="jdbc/mydb" auth="Container" type="javax.sql.DataSource"
username="myusr" password="mypwd" driverClassName="com.mysql.jdbc.Driver"
maxActive="1000" maxIdle="100" maxWait="10000"
url="jdbc:mysql://localhost:3306/mydatabase"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" />
web.xml
에서는 :
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/mydb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
데이터베이스는 MySQL의 하나입니다.
예를 들어 제품 목록과 같은 일부 정보를 선택하면 제품을 삽입하거나 삭제 한 후에도 같은 목록이 표시됩니다.
어떻게 방지합니까? 이 경우 업데이트 된 목록을 보게됩니다.
을 편집 query_cache_size
은 0이다 query_cache_type
는 ON이다.
그래서 문제가 될 수 있습니까? 왜 쿼리 캐싱이 발생합니까?
편집 나는 "쿼리 캐시를 RESET"과 "FLUSH TABLES"에 대해 읽어보십시오.
그들 사이의 차이점은 무엇입니까?
그 중 하나를 사용하면 경매/전자 상거래 시나리오에 문제가있을 수 있습니까?
MySQL의 관점에서 볼 때,'SELECT SQL_NO_CACHE'는 질의 캐시의 온/오프에 관계없이 질의 캐시 검사를 건너 뛰는 SELECT를 실행합니다. – RolandoMySQLDBA
@eggyal : 예. 나는 그것을 자동으로 수여했다. – Sefran2
@eggyal : 전에, 나는 대답을 받아 들였습니다. 이제, 나는 그것을 수여했다. – Sefran2