coping with long natural string key
INT is 4 bytes.  VARCHAR(12) is a little longer.  I would gladly use either for a PRIMARY KEY without worrying about performance.

A BTree is efficiently structured such that a longer key does not impact performance much.

If you switch that value to INT, perhaps with ZEROFILL, the speed up will be small.

If you add an INT AUTO_INCREMENT, then you are likely to slow down some uses of the table.  For more details, let's see some queries, including inserts and updates.