반응형
systemd가 있는 데이터베이스 파일에 대해 모니터 파일 변경이 작동하지 않음
아래 경로에 있는 파일 시스템의 데이터베이스 파일 하나를 모니터링합니다.
/var/lib/mysql/mydatabase/onetable.idb
systemd 서비스를 설정했는데 파일이 바뀌었는지 인식이 안 됩니다.내가 이 파일을 수정하면 아무 일도 일어나지 않지만, 권한이 수정되면 작동합니다.이 파일도 알림 대기로 모니터링하려고 했는데 결과가 똑같았습니다.
시스템이 root로 실행되는 것으로 알고 있기 때문에 허가에는 문제가 없다고 생각합니다.파일을 직접 나열할 수 있기 때문에 경로가 100% 유효합니다.
innotify.7 man 페이지에서:
The inotify API does not report file accesses and modifications that
may occur because of mmap(2), msync(2), and munmap(2).
이러한 루틴은 데이터베이스 구현에 자주 사용됩니다.
crontab에 이 코드를 삽입하여 임시로 이 문제를 해결했습니다.
*/3 * * * * test "`sudo find /var/lib/mysql/mydatabase/onetable.idb -mmin -4`" && /etc/myscript.sh
이 트리거 기반 스크립트 실행을 수행하려고 하므로 영구적인 해결책은 아닙니다.
언급URL : https://stackoverflow.com/questions/54271217/monitor-file-changing-doesnt-works-for-database-file-with-systemd
반응형
'programing' 카테고리의 다른 글
파이썬 대 C#/.NET -- 대형 웹 애플리케이션을 개발하는 데 사용할 때 고려해야 할 주요 차이점은 무엇입니까? (0) | 2023.08.31 |
---|---|
UI 텍스트 필드에 신속하게 아이콘/이미지 추가 (0) | 2023.08.31 |
PowerShell 버전 2에서 문자열을 바이트 배열로 변환 (0) | 2023.08.31 |
C 어레이를 C++의 std:: 어레이에 할당하시겠습니까?(std::array = T[U]) - "T [U]"에서 "std::array"까지 적합한 생성자가 없습니다. (0) | 2023.08.31 |
Mysql Dump를 사용하여 보기 백업 (0) | 2023.08.31 |