最佳方法:使用Java 8在MySQL中检索、加密和更新数百万条记录
<p>我们有一个需求,需要从MySQL数据库中读取大约1000万条记录,对这些记录进行加密,并将加密后的值更新回字段中。
如何以最高效的方式实现这个需求。</p>
<p><strong>1</strong>:使用AES_ENCRYPT从MySQL数据库进行字段级别的加密:据我了解,AES_ENCRYPT在varbinary上可以有效地工作,但我们的字段只是varchar类型。
因此排除了这个选项。</p>
<p><strong>2</strong>:之前在我们的一个应用程序中已经使用了Java中的Executor功能来实现批量插入。但记录数不超过5万条。我们被要求使用类似的方法。因此排除了使用Spring Batch来实现。</p>
<p>我正在寻找在Java 8 / MySQL数据库中需要考虑的可能特性。</p>
<p>Java 8:使用Executor进行多线程处理,使用CompletableFuture进行异步处理,使用Streaming。</p>
<p>MySQL:创建索引...</p>