Mysql
 sql >> Base de données >  >> RDS >> Mysql

réplication mysql (réplica TokuDB):la colonne X de la table 'database.table' ne peut pas être convertie du type 'varchar(Y)' au type 'varchar(Y)'

Il s'avère qu'il y avait une différence entre la définition des deux tables.

Le CHARSET était le vrai coupable.

Maître :

...
) ENGINE=InnoDB AUTO_INCREMENT=XXXXX DEFAULT CHARSET=latin1

Réplique :

...
) ENGINE=TokuDB AUTO_INCREMENT=XXXX DEFAULT CHARSET=utf8

Commande nécessaire pour "réparer" la table avant de redémarrer la réplication :

ALTER TABLE database.table CONVERT TO CHARACTER SET latin1;