Adding a new column in a database can be trivial or dangerous. In small datasets, it is instant. In large production systems, it can lock tables, block writes, and trigger long-running migrations. Every new column adds storage cost, changes query plans, and can break dependent code if done without a plan.
Start with the schema definition. Pick the correct data type. Use NULL defaults when needed to avoid rewriting every row. Set sensible defaults only if you know they will not cause heavy write amplification. Avoid wide columns unless required; large text or JSON blobs can slow scans and increase memory load.
Online schema changes reduce downtime. Tools like pt-online-schema-change or native ALTER TABLE ... ADD COLUMN variants in cloud databases can stream migrations without locking. Plan in advance for indexes—adding an index on a new column at the same time as creating it can increase migration cost. Stage the index creation separately if performance is critical.