Если бы таблица была пуста, вы могли бы просто сделать:
ALTER TABLE mytable MODIFY COLUMN id bigint not null primary key auto_increment
но я не уверен, что произойдет со строками в нем. Лучше всего создать новый файл с правильными определениями, скопировать данные за минус столбец id, удалить старую (неправильную) таблицу и переместить новую в старое имя.
-- Either:
CREATE TABLE newtable LIKE mytable;
ALTER TABLE newtable MODIFY COLUMN id bigint not null primary key auto_increment;
-- or:
CREATE TABLE newtable (
id bigint not null primary key auto_increment,
column1 type1,
column2 type2,
...
);
INSERT INTO newtable
(column1, column2, ...)
SELECT column1, column2, column3, ...
FROM mytable;
-- Make SURE that insert worked BEFORE you drop the old table
-- and lose data if it didn't.
DROP TABLE mytable;
ALTER TABLE newtable RENAME TO mytable;
Я уверен, что phpMyAdmin имеет возможность сделать это более графически.