Запись является атомарной, но приращение также требует чтения. Итак, вопрос: вы уверены, что чтение безопасно, другими словами, вы уверены, что другой поток, выполняющий инкремент, не будет иметь такое же значение, которое будет увеличено? У меня есть сомнения. 100% правильный способ сделать это будет.
-- begin transaction here
select counter from myCounters where counter_id = 1 FOR UPDATE;
-- now the row is locked and nobody can read or modify its values
update myCounters set counter = ? where id = 1;
-- set ? to counter + 1 programmatically
commit; -- and unlock...