Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Spring Batch - JdbcCursorItemReader ném OutOfMemoryError với bảng MySQL lớn

Có một sự cố trong trình điều khiển MySql JDBC gây ra việc tải toàn bộ tập dữ liệu vào bộ nhớ bất kể các tham số bạn đã chuyển cho phương thức tạo câu lệnh. Xem http:// dev. mysql.com/doc/refman/5.0/en/connector-j-reference-implementation-notes.html để biết cách mở con trỏ đúng cách.

Đây là cách tôi làm điều đó:

<bean class="org.springframework.batch.item.database.JdbcCursorItemReader">
  <property name="verifyCursorPosition" value="false" />
   <property name="dataSource" ref="remoteDataSource" />
   <property name="rowMapper">
     <bean class="org.springframework.jdbc.core.SingleColumnRowMapper" />
   </property>
   <property name="fetchSize">
     <util:constant static-field="java.lang.Integer.MIN_VALUE" />
   </property>
   <property name="sql">
     <value>SELECT foo, bar FROM baz</value>
  </property>
</bean>



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chuyển từ bản sao truyền thống sang GTID

  2. mySQL SELECT sinh nhật sắp tới

  3. Cách tìm tên cột có phải là từ khóa dành riêng trên các cơ sở dữ liệu khác nhau hay không

  4. Tại sao thực thi chậm trong Python MySQLdb?

  5. Sửa lỗi PHP PEAR