This change sounds small. It is not. A new column can break deploys, stall migrations, and cause data loss if done without care. Whether in PostgreSQL, MySQL, or a data warehouse, altering a schema in place has real costs. Rows may lock. Queries may slow. APIs may fail if the column is unexpected or defaults are missing.
Best practice starts with understanding the workload. On large tables, adding a new column with a default value can rewrite the entire table, taking the system offline. Always review the migration plan the database engine will execute. Many systems allow adding a NULLable column instantly, then backfilling in batches to avoid downtime. Use transactional DDL where possible, and test the migration in a staging environment with production-like data.
Version your schema changes alongside your application. If the application depends on the new column, deploy support for it first, then roll out the database change. This reduces race conditions and avoids breaking old code paths. Use feature flags to control when the column goes live for reads and writes.