Table definition on master and slave does not match

주종 신고를 받은 것은 다음과 같다.
Table definition on master and slave does not match: Column 1 size mismatch - master has size 33, banggood_work.customer_points_table on slave has size 11. Master's column size should be <= the slave's column size.

이것은 주종 복제표 구조가 일치하지 않기 때문이다!
그러나 대응하는 시계를 찾으면 시계의 구조가 완전히 일치하는 것을 발견한다!주종 복제 프로세스를 다시 시작했습니다. 문제는 여전합니다.
표 구조를 자세히 보니 기계의 표 인코딩은latin1이고 호스트 인코딩은utf8이며 호스트binlogformat=row.
컴퓨터의 테이블과 필드 인코딩을utf8로 변경한 후 주종 복제 프로세스를 다시 시작합니다. 문제 해결!
사실 파라미터를 설정해서 해결할 수도 있지만 데이터를 잃어버릴 수도 있어요.
slave_type_conversions
     mysql5.5.3   ,     row    bin-log    ,
     column         ,       ,mysql5.5.3     ,   int    bigint        ,
                   。
             ,         。
            ,   int    tinyint          。
      :
ALL_LOSSY:       
ALL_NON_LOSSY:        ,            ,      ,   ,    ,  ***   ,    。
ALL_LOSSY,ALL_NON_LOSSY:            ,          。
   (   ) :                 ,     。

참고 사항:
1. 이 문제의 근본 원인은 기기의 기본 인코딩이 Latin1이고 주종 설정이 통일되지 않기 때문이다
2. 표를 작성할 때 인코딩을 하는 것이 가장 좋다.인코딩이 없으면 기본 인코딩을 사용할 수 있습니다. 주종 설정이 다르면 문자열이 있는 필드에 binlogformat=row일 때 상기 문제가 발생합니다!

좋은 웹페이지 즐겨찾기