Adding a new column to a table is one of the most common schema changes. It can also be one of the most disruptive if done carelessly. The operation sounds trivial, but in production systems with high traffic and strict uptime, even a simple ALTER TABLE can block queries, cause replication lag, or trigger migrations that take hours.
Before adding a new column, confirm the exact data type, nullability, and default value. Choose types that match the intended use to prevent later refactors. If you need to backfill data, plan it as a separate step from the schema change. This reduces locks and downtime risk.
In PostgreSQL, adding a column without a default is usually fast because it only updates the table definition. Adding it with a default value forces a full table rewrite. In MySQL, the impact depends on storage engine, table size, and version. Modern versions with ALGORITHM=INPLACE can make adding a nullable column faster, but the wrong options can still lock the whole table.