Adding a new column should never stall production or risk data loss. Whether you work in PostgreSQL, MySQL, or a cloud-native database, the process is simple if you plan each step and understand the impact. Performance, locks, and indexing must be part of the decision before you run ALTER TABLE.
In PostgreSQL, adding a nullable column without a default is near-instant, even on large tables. Adding a column with a default value will rewrite the whole table unless you use DEFAULT with NULL and backfill in batches. In MySQL, the cost is higher when schema changes rebuild the table. For big datasets, consider online schema change tools like gh-ost or pt-online-schema-change to avoid downtime.
Before adding a new column, review: