Adding a new column is not just a schema change—it’s a live operation that touches performance, deployment speed, and user experience. Done wrong, it locks your table, spikes latency, and risks downtime. Done right, it slips into production without anyone noticing.
First, decide on the column type. Choose the smallest data type that works. Avoid null defaults unless absolutely required—they slow queries. Index only if the column will be filtered or searched often; otherwise, let it remain free of overhead.
Second, plan for migration. On large tables, use online schema change tools. In PostgreSQL, ALTER TABLE ADD COLUMN is fast for empty columns with defaults on new rows, but dangerous if paired with heavy updates. In MySQL, lean on pt-online-schema-change or native instant DDL where possible.