Adding a new column sounds simple. It isn’t. Every table change is a contract change. Every deployed schema modifies the shape of your data forever.
The first step is definition. In SQL, ALTER TABLE with ADD COLUMN is the standard. But this is only a surface change. You must consider default values, nullability, and type constraints. Setting a column as NOT NULL without a safe default will fail if existing rows violate the rule.
Indexes are the next decision. A new column without an index might slow filters but keep writes fast. An indexed column accelerates reads at the cost of storage and insert latency. For high-traffic systems, this trade-off determines success or collapse under load.
Migrations in production require planning. Long-running ALTERs on large datasets cause locks and block queries. Options include creating a shadow table, using pt-online-schema-change, or leveraging database-native online DDL features. Each comes with edge cases. Each must be tested against real traffic.