Adding a new column to a production database can be routine or dangerous, depending on how you work. The schema change must be precise. The migration must be tested. The deployment must avoid downtime. Every decision here touches performance, uptime, and the trust users have in your system.
When you create a new column in SQL, you also choose its data type, nullability, and default values. Each choice affects disk usage, query speed, and application logic. A nullable column might be easier to add, but it can complicate constraints and indexing later. A column with a default value will rewrite data pages if applied to a large table. That rewrite can lock rows for seconds or minutes, depending on scale.
For PostgreSQL, use ALTER TABLE ADD COLUMN with care. If the column can be null, the operation is fast. If you need defaults on large datasets, consider creating the column without a default, backfilling in smaller batches, then setting the default and constraints afterward. MySQL has similar rules, but engine type and version change the performance profile.