Rows piled up for months, but the schema had no place for the data. The answer was simple: add a new column. When done right, it solves problems instantly. When done wrong, it can bring a system to its knees.
A new column changes the shape of your database. It’s more than a field name. It touches queries, indexes, constraints, and integrations. The choice of data type matters. An integer costs less space than a string. A fixed-length column can be faster than a variable one. Defaults can ease migrations, but the wrong default can hide bad data.
Before you add a new column, inspect the usage patterns. Will it be read-heavy or write-heavy? Is it going to index well? Adding an index at creation avoids later outages, but indexing a large table can block writes if not planned well. Online schema migration tools like pt-online-schema-change or native ALTER TABLE with concurrent options can keep services running under load.