I believe it's correct the way it is ... the display issue can be caused by another factor, configuration maybe. If you reverse the sequence, the next post would be code 115 and it would be just after the "hello world" which was the first one ... I recommend not to perform this procedure without first checking what it can be.
But if you look at just the reverse of numbering.
You first have to change all numbers to a range that has no conflicts. could do so:
update tabela set id = id + 1000;
When you do this, you make a select by numbering the rows in order of descending id and saving it in a temporary table:
with temp as
(
select t.*, row_number() over (order by t.id desc) as i from tabela t order by t.id desc
)
Finally, you apply the new id in the record, as the number of the select row stored in the temporary table:
update tabela set id = (select x.i from temp x where x.id = tabela.id );
MySQL 8 was used as an example. The row_number () function is only available from this release.
For other versions, the following code can be used:
update tabela set id = id + 1000;
update tabela set id = (select x.i from (select t.*, @rownum := @rownum + 1 AS i from tabela t, (SELECT @rownum := 0) r order by t.id desc ) x where x.id = tabela.id );
I put it in DBFiddle
Bacco's solution is clearly simpler and more functional for the case in question, but since I had already made the code to re-number it, I'll leave it here as well.