Да, вы можете использовать $dbh->sqlite_backup_to_file( $filename )
и затем подключиться к этому файлу, как обычная база данных SQLite.Для получения дополнительной информации см. Документация по API резервного копирования SQLite .
Но в принципе то же самое можно достичь с той же производительностью, если отключить AutoCommit и зафиксировать транзакцию только тогда, когда вызакончили с вашими объемными вставками.SQLite, вероятно, будет держать все ваши вставки в памяти, пока они не будут зафиксированы.
my $dbh = DBI->connect(
"dbi:SQLite:dbname=test.sqlite", undef, undef, { RaiseError => 1, AutoCommit => 0 }
);
...do your inserts...
$dbh->commit;
Простой тест показывает, что это так же быстро и более гибко.
Отключение AutoCommit даст вам мощный импульс с любой из опций.