2017-06-26 3 views
1

WALのための原稿ではFULLNORMAL同期との違いが明確に1を述べている:WAL同期NORMAL対OFF

彼らは二回しか対(一度 コンテンツを書くことを必要とするので

書き込みトランザクションは非常に高速です ロールバック・ジャーナル・トランザクションの場合)、 の場合は書き込みがすべて順番に行われるためです。さらに、 に内容を同期させると、アプリケーションは に喜んでいる限り、電源が切断されたりハードリブートされた後の耐久性を犠牲にする限り、ディスクは必要ありません。

しかし、私はWALのどこにでもPRAGMA synchronous = OFFの効果を見つけることができません(プラグマ同期がFULLに を設定しますが、プラグマ同期がNORMALに設定されている場合は、この同期を省略します。されている場合、すべてのトランザクションの作家 同期WALはコミット)モード。私はそれがNORMALと同じであると思われる。誰でもに連絡しました答え?また

答えて

0

documentation言う:WALモードで

同期が正常である場合(1)、WALファイルは各チェックポイントの前に同期され、各完了チェックポイントとWALファイルのヘッダされた後、データベースファイルが同期されますチェックポイント後にWALファイルの再利用が開始されたときに同期されます。

オフのため、通常のトランザクションでは違いはありませんが、いずれの場合もcheckpointは危険です。