Adding a new column sounds trivial until it takes down a key service. Schema changes can be dangerous in production. A single blocked query can ripple into hours of downtime. The solution is to make schema evolution safe, fast, and predictable.
A new column in a relational database changes both the data model and the application code paths. Before adding it, check dependencies. Code must not reference the column until the migration is complete. Use feature flags or backward-compatible queries. In PostgreSQL, adding a nullable column without a default is almost instant. Adding a default with a non-constant value rewrites the table and locks it. MySQL behaves differently—watch for table locks that block reads and writes.
Plan migrations that split the change into steps. First deploy code that can work with or without the column. Then run the migration in a low-traffic window or with online schema change tools. For large datasets, chunk your updates. Monitor replication lag and query latency during the change.