0

나는 mysql : users와 management에 대해 두 개의 테이블을 가지고있다. 사용자 테이블에는 숫자 ID가 있으며 관리 테이블에는 다른 테이블의 기본 키인 varchar 외래 키가 있습니다. 형식이 동일하지 않습니다 및 사용자 모델에서 인덱스를 빌드 할 때 주 문제가 것 및 관리 테이블에서 한 열을 포함하려고합니다. thinkinx 스핑크스가 생성하는 조인은 실행에 너무 많은 시간이 걸리므로 인덱스가 완성되지 않습니다. 최상의 해결책은 관리 테이블을 변경하고 숫자 ID를 사용하는 것이지만 지금은 너무 비싸다고 생각합니다. sphinx에 varchar 필드가 실제로 숫자 id라는 사실을 알리는 방법이 있습니까? 그렇다면 테이블을 변경하지 않고 인덱스를 생성 할 수 있습니까?스핑크스 - 다른 유형의 외래 키 - 연관성 문제

명확하지 않은 경우 너무 모호하게 보이는 부분을 명확히 설명해 주시기 바랍니다.

감사합니다.

+0

당신이 게시 할 수를 데이터베이스 스키마의 예와 어쩌면 몇 가지 샘플 데이터를 사용하여 어떻게 설정하는지 더 잘 이해할 수 있습니까? –

답변

0

외래 키에 데이터베이스 인덱스가 있는지 확인해야합니다. 또한

, 당신은 생성 된 구성을 편집 할 경우, 이렇게 한 다음 자동으로 파일을 재생하지 않는 두 가지 옵션 중 하나를 사용하여 인덱스를 처리 할 수 ​​있습니다 :

rake ts:index INDEX_ONLY=true 
rake ts:reindex # this was only added the other day 
+0

나는 이것이 일할지도 모른다라고 생각한다. 나는 다음 월요일에 되돌아 왔고, 그것이 어떻게 갔는지에 관해 말할 것이다. 감사! – Daniel