2009-12-04 2 views
2

Toad for MySQL에서 SVN을 사용하여 두 개발 시스템에 두 개의 DB를 동기화 상태로 유지하려고합니다. 한 대의 컴퓨터에서 테이블을 수정하면 Toad는 적절한 스크립트를 변경하고 올바르게 검사합니다.Toad with MySQL 및 버전 관리 관련 문제

다른 컴퓨터에서 "데이터베이스 업데이트"또는 "Updata 스키마"또는 특정 테이블에서 "최신 가져 오기"를 시도하면 테이블이 변경되었음을 알리는 창이 나타나지만 확인을 클릭하면 -- no changes detected이라고하는 빈 스크립트 창을 가져오고 (그리고 OK 단추는 사용할 수 없습니다). 수동으로 테이블을 변경하려고하면 Toad에서 SVN과 일치하지 않으며 업데이트를 원하지만 첫 번째 창으로 이동하게됩니다. 그리고 첫 번째 창은 성공적으로 닫힐 수 없으므로 (취소 만 가능함) 테이블을 편집 할 수도 없습니다.

아무도이 전에 했나요? 내가 도대체 ​​뭘 잘못하고있는 겁니까?

추가 : 또 다른 문제점 : 컴퓨터 중 하나에 새 테이블을 추가했습니다. 다른 하나를 업데이트하려고하면 MySQL Database Error: Table 'my.table' doesn't exist이됩니다.

2 : 추가되었습니다. 문제가있는 것 같습니다. 두꺼비입니다. 여기에 내가 발견 한 또 다른 것이 있습니다. DB를 수정하기 위해 하나의 머신 만 사용하더라도 테이블이나 SVN을 업데이트해야한다는 것은 나에게 여전히 다릅니다 (차이점은 없지만 유일한 변경 사항입니다. 이 기계에서 한 것이고 체크인 한 것입니다.) SVN에서 업데이트하려고하면 같은 막 다른 대화 상자가 나타납니다.

Before:) ENGINE=InnoDB DEFAULT CHARSET=utf8; 
After:) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8; 

이 꽤 자기 설명해야한다 : 내가 SVN으로 업데이트하면, TortoiseSVN을 함께 변경 집합을 검사하는 것은 하나의 큰 변화를 보여준다. "테이블이 존재하지 않는다"는 것을 설명하지는 않지만 단지 다른 버그 일뿐입니다. 좋은 소식 - Toad의 사람들 already know에 관한 내용이며 다음 릴리스에서 수정 될 것이라고합니다.

+0

사용중인 svn의 버전은 무엇입니까? – Zack

+0

CollabNet의 최신 및 최고의 CLI 인터페이스. –

+0

MySQL 데이터베이스는 어떤 운영 체제입니까? Linux에서와 같이 파일 시스템이 대소 문자를 구분하면 다음과 같은 오류가 발생할 수 있습니다. – Aaron

답변

0

당신의 머신 중 하나가 데이터베이스 변경 사항을 추적하기 위해 리포지토리를 사용할 수 있지만 다른 하나는 리포와 관련된 문제가있는 것 같습니다. 당신의 문제 기계가 가지고있는 것 같습니다 :

  • 다른 또는 손상된 svn 클라이언트.
  • 다른 또는 손상된 두꺼비 클라이언트.
  • 다른 또는 손상된 mysql 클라이언트.
  • 손상된 작업 복사본.

설치/버전을 확인하고 작업 복사본/데이터베이스를 백업하고 저장소에서 새로 체크 아웃하십시오.

+0

사실, 나는 이미 그것이 Toad의 버그라고 결정했습니다. 게시물을 참조하십시오. –

0

Toad의 버그 인 경우 다른 SVN 클라이언트를 사용하여 체크 아웃을 관리 할 수 ​​있습니다. Toad를 사용하여 체크 인을 수행하지만 체크 아웃 할 때 Toad를 종료하면 Toad가 다시 시작할 때 최신 버전의 파일을 읽어야합니다.

별로 좋지는 않지만 적어도 계속 작업 할 수 있습니다.

+0

그게 문제예요. Toad는 테이블을 변경하기 전에 파일에 대한 단독 잠금을 원합니다. 파일을 잠그기 전에 파일을 업데이트해서는 안되는지 확인합니다. –