Adding a new column in a production database changes more than the schema. It can shift query plans, impact indexes, and alter API contracts. Done carelessly, it burns performance and trust. Done right, it keeps systems stable while enabling new features.
First, define the purpose of the new column. Know exactly what data it will store and how it will be used. Decide the type—integer, text, timestamp—and ensure it matches both current and future needs.
Second, plan the migration. In PostgreSQL or MySQL, ALTER TABLE ADD COLUMN is straightforward, but data backfills and default values can lock rows or block writes. Use nullable columns for phased rollouts, or populate values in batches to avoid downtime.