피해를주지 않고 sqlite 데이터베이스 파일의 해시를 계산하는 방법

매튜 모 이젠

변경 사항을 감지하기 위해 만든 마지막 백업과 비교하기 위해 sqlite 데이터베이스 파일의 해시를 계산하는 데 사용하려는 다음과 같은 기능이 있습니다.

def get_hash (file_path) : 
    # http://stackoverflow.com/a/3431838/1391717 
    hash_sha1 = hashlib.sha1 
    with open (file_path, "rb") as f : 
        for chunk in iter (lambda : f.read (4096) , b "") : 
            hash_sha1.update (chunk) 

    return hash_sha1.hexdigest ()

데이터베이스를 잠글 계획이므로 해시를 계산하는 동안 아무도 쓸 수 없습니다. 이렇게하는 동안 내가 해를 끼칠 수 있습니까?

// http://codereview.stackexchange.com/questions/78643/create-sqlite-backups 
connection = sqlite3.connect (database_file) 
cursor = connection.cursor () 
cursor.execute ( "즉시 시작") 

db_hash = get_hash (args .데이터 베이스)
Simon

sqlite3 데이터베이스 파일은 동시에 여러 독자가 읽을 수 있으며 읽을 수 있습니다. sqlite3와 관련하여 동시성에는 문제가 없습니다. sqlite3 고유의 문제는 파일 쓰기와 관련이 있으며 한 명의 작성자 만 허용됩니다.

그러니 벌금 만 읽으면.

데이터베이스를 잠그고 성공할 계획이라면 해시를 계산하는 동안 배타적 액세스 권한을 가진 작성자가됩니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

sqlite 데이터베이스의 모든 데이터를 표시하는 방법

분류에서Dev

sqlite 데이터베이스의 모든 데이터를 표시하는 방법

분류에서Dev

복사하지 않고 자산의 데이터베이스에서 데이터를 읽는 방법

분류에서Dev

장고 데이터베이스의 항목 수를 제한하는 방법은 무엇입니까? 기본 데이터베이스 (sqlite3) 사용

분류에서Dev

sqlite 데이터베이스에서 데이터를 검색하고 조각에 표시하는 방법

분류에서Dev

데이터베이스 시드를 방해하지 않고 laravel userstamps

분류에서Dev

Android에서 기존 sqlite 데이터베이스의 데이터를 업데이트하는 방법

분류에서Dev

SQLite 데이터베이스의 마지막 ID를 아는 방법

분류에서Dev

파이썬. sqlite3 데이터베이스를 Excel 파일로 변환하는 방법

분류에서Dev

PHP에서 시차를 계산하고 mysql 데이터베이스에 시차를 저장하는 방법

분류에서Dev

파일 경로를 사용하지 않고 GridView의 데이터베이스에서 이미지를 폐기하는 방법

분류에서Dev

SQLite 데이터베이스를 검색하고 검색된 행의 값을 사용하여 계산

분류에서Dev

SQLite 데이터베이스를 암호화하는 방법

분류에서Dev

파일이 SQLite 데이터베이스인지 확인하는 빠른 방법

분류에서Dev

파이썬으로 SQL 데이터베이스의 레코드 수를 계산하는 방법

분류에서Dev

Xamarin의 SQLite 데이터베이스에서 데이터를 삭제하는 방법

분류에서Dev

목록의 데이터를 SQLite3 데이터베이스에 삽입하는 방법

분류에서Dev

sqlite 데이터베이스의 데이터를 암호화하는 방법은 무엇입니까?

분류에서Dev

sqlite 데이터베이스의 데이터를 암호화하는 방법은 무엇입니까?

분류에서Dev

SQLite 데이터베이스에서 Android의 문자열 형식으로 데이터를 검색하는 방법

분류에서Dev

devexpress xtra 보고서를 데이터베이스 또는 파일에 저장하고 데이터베이스 또는 파일에서로드하는 방법

분류에서Dev

MySQL 데이터베이스에서 데이터를 검색하고 xml 파일에 저장하는 방법

분류에서Dev

보고서 뷰어의 테이블에 SQL 데이터베이스의 데이터를 표시하는 방법

분류에서Dev

SQL 데이터베이스 열의 모든 값을 합산하고 합계를 TextView로 표시하는 방법은 무엇입니까?

분류에서Dev

zip 폴더의 csv 파일에서 읽고 데이터베이스의 csv 파일에서 데이터를 저장하는 방법은 무엇입니까?

분류에서Dev

파일 또는 어댑터를 통해 SQLite 데이터베이스 채우기

분류에서Dev

mysqli를 사용하여 동일한 데이터베이스에서 2 개의 행을 계산하는 방법

분류에서Dev

Xamarin 양식의 SQLite를 사용하여 데이터베이스의 항목을 업데이트하는 방법

분류에서Dev

Oracle 데이터베이스에서 시작 문자가 동일한 행 수를 계산하는 방법

Related 관련 기사

  1. 1

    sqlite 데이터베이스의 모든 데이터를 표시하는 방법

  2. 2

    sqlite 데이터베이스의 모든 데이터를 표시하는 방법

  3. 3

    복사하지 않고 자산의 데이터베이스에서 데이터를 읽는 방법

  4. 4

    장고 데이터베이스의 항목 수를 제한하는 방법은 무엇입니까? 기본 데이터베이스 (sqlite3) 사용

  5. 5

    sqlite 데이터베이스에서 데이터를 검색하고 조각에 표시하는 방법

  6. 6

    데이터베이스 시드를 방해하지 않고 laravel userstamps

  7. 7

    Android에서 기존 sqlite 데이터베이스의 데이터를 업데이트하는 방법

  8. 8

    SQLite 데이터베이스의 마지막 ID를 아는 방법

  9. 9

    파이썬. sqlite3 데이터베이스를 Excel 파일로 변환하는 방법

  10. 10

    PHP에서 시차를 계산하고 mysql 데이터베이스에 시차를 저장하는 방법

  11. 11

    파일 경로를 사용하지 않고 GridView의 데이터베이스에서 이미지를 폐기하는 방법

  12. 12

    SQLite 데이터베이스를 검색하고 검색된 행의 값을 사용하여 계산

  13. 13

    SQLite 데이터베이스를 암호화하는 방법

  14. 14

    파일이 SQLite 데이터베이스인지 확인하는 빠른 방법

  15. 15

    파이썬으로 SQL 데이터베이스의 레코드 수를 계산하는 방법

  16. 16

    Xamarin의 SQLite 데이터베이스에서 데이터를 삭제하는 방법

  17. 17

    목록의 데이터를 SQLite3 데이터베이스에 삽입하는 방법

  18. 18

    sqlite 데이터베이스의 데이터를 암호화하는 방법은 무엇입니까?

  19. 19

    sqlite 데이터베이스의 데이터를 암호화하는 방법은 무엇입니까?

  20. 20

    SQLite 데이터베이스에서 Android의 문자열 형식으로 데이터를 검색하는 방법

  21. 21

    devexpress xtra 보고서를 데이터베이스 또는 파일에 저장하고 데이터베이스 또는 파일에서로드하는 방법

  22. 22

    MySQL 데이터베이스에서 데이터를 검색하고 xml 파일에 저장하는 방법

  23. 23

    보고서 뷰어의 테이블에 SQL 데이터베이스의 데이터를 표시하는 방법

  24. 24

    SQL 데이터베이스 열의 모든 값을 합산하고 합계를 TextView로 표시하는 방법은 무엇입니까?

  25. 25

    zip 폴더의 csv 파일에서 읽고 데이터베이스의 csv 파일에서 데이터를 저장하는 방법은 무엇입니까?

  26. 26

    파일 또는 어댑터를 통해 SQLite 데이터베이스 채우기

  27. 27

    mysqli를 사용하여 동일한 데이터베이스에서 2 개의 행을 계산하는 방법

  28. 28

    Xamarin 양식의 SQLite를 사용하여 데이터베이스의 항목을 업데이트하는 방법

  29. 29

    Oracle 데이터베이스에서 시작 문자가 동일한 행 수를 계산하는 방법

뜨겁다태그

보관