Du måste byta ordning på dina index:
CREATE TABLE IF NOT EXISTS `test` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`abc` varchar(50) NOT NULL,
`data` varchar(100) NOT NULL,
PRIMARY KEY (`abc`, `id`) -- id got to be second
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Jag citerar från manualen :
För MyISAM-tabeller kan du ange AUTO_INCREMENT på en sekundär kolumn i ett index med flera kolumner.
Fungerande exempel i denna fiol