2009-09-22 5 views
0

MySQL은 데이터베이스에 대한 모든 변경 사항을 바이너리 로그라는 바이너리 파일에 저장합니다. MySQL은 mysqlbinlog라는 디코더를 제공하여 이러한 파일을 디코딩합니다. 응용 프로그램에서이 로그 파일을 직접 파싱하려면 C#을 사용하여 직접 디코딩 할 방법을 찾아야한다고 생각했습니다.C에서 # mysqlbinlog 디코드

SHOW BINLOG EVENTS를 사용할 수있는 권한이 있는지 알고 있습니다. 그러나 파일을 구문 분석하는 것이 나에게 더 나은 솔루션이 될 것입니다.

이전에 수행 한 사람이 있습니까? 어떤 제안?

답변

1

mysqlbinlog 코드를 보면 유용 할 수 있습니다. 또한 해당 도구의 종속성을 사용할 수 있습니다. here

+0

I'am 아닌 C 전문가하지만 난 그것을 알아낼 수 있습니다. 감사. –

+0

* g * It 's C++;) 따라서 C에서 멀리 떨어져 있지 않아 # – tuergeist

+0

예. 알았어. 감사합니다 :) –

0

저는 C++ 전문가가 아니기 때문에 tuergeist가 제안한 코드를 이해하는 데 많은 시간이 걸릴 것이므로 다른 방법을 선택했습니다.

mysqlbinlog는 이미 제공되지 않는 이유는 무엇입니까?

  • 내가
  • 에서 mysqlbinlog의 출력을 읽을 ProcessStartInfo를를 사용하는 방법에 파일 이름을 통과하는 모든 로그 파일을 얻을 수있는 바이너리 로그 인덱스를 사용할 수는
  • 출력은 예를 들어 배열로 구문 분석 할 수 . 나는 아직 그것을 테스트하지 않은,하지만 내가 일하고 있어요

...

+0

이 접근 방식에 성공 했습니까? –