Adding a new column is one of the most common schema changes. It can be simple. It can also break production if done wrong. The key is precision—planning the migration, choosing the right data type, and deploying without downtime.
A new column in SQL changes the shape of the table. Every query and write path that touches it must work from the moment it goes live. For MySQL, ALTER TABLE ... ADD COLUMN is straightforward, but on large datasets, it can lock the table and stall traffic. PostgreSQL handles certain new column operations instantly when a default value is null, but will rewrite the table if you set a default. In both cases, you must measure the impact before hitting enter.
Backward compatibility keeps services breathing during the change. First, deploy code that can run without the column and ignores its absence. Then add the new column in a migration, in a way that does not block reads and writes. Populate it in batches to avoid spikes. Only after the data is ready do you roll out the code that depends on it.