Adding a new column in a live database is the kind of change that sounds small but demands precision. Schema changes can lock tables. They can block writes. They can break queries you forgot about months ago. The wrong move at the wrong time turns a normal deploy into downtime.
Start by choosing the right migration strategy. For small datasets, a direct ALTER TABLE ADD COLUMN may work. For large datasets, use an online migration tool to add the column without blocking reads or writes. MySQL offers ALGORITHM=INPLACE; PostgreSQL can add many kinds of columns instantly if they have a default of NULL. Always check the documentation for edge cases.
Think about the column name, data type, and nullability before you touch production. Avoid generic names. Use types that match the smallest possible storage to reduce bloat and improve index performance. Decide if the column should have a default value, but remember that backfilling defaults on a massive table can trigger a full rewrite.