sql >> データベース >  >> RDS >> Mysql

SpringBatch-大きなMySQLテーブルでOutOfMemoryErrorをスローするJdbcCursorItemReader

    MySql JDBCドライバーには、ステートメント作成メソッドに渡したパラメーターに関係なく、データセット全体がメモリーにロードされるという問題があります。 http://devを参照してください。 mysql.com/doc/refman/5.0/en/connector-j-reference-implementation-notes.html カーソルを適切に開く方法について。

    これが私のやり方です:

    <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. MySQLの複数のインデックスと検索用の複数列のインデックス

    2. 属性は、あるテーブルを別のテーブルの上に指定できますか?

    3. PHPの日付をmysql形式に変換します

    4. herokuでプレーンテキストのpostgresデータベースダンプを取得するにはどうすればよいですか?