Adding a new column to a live database used to be dangerous. Migrations could lock tables. Queries could slow to a crawl. In worst cases, your app would grind to a halt. Modern tooling makes it faster and safer, but only if you know exactly how to do it.
A new column begins with a clear schema change. Define the column name, data type, and constraints. Keep it specific. Avoid vague types that invite bad data later. If the column should never be null, set that constraint from the start. If it needs an index, plan it before production rollout.
In SQL, the basic command is direct:
ALTER TABLE users ADD COLUMN last_login TIMESTAMP;
But best practice is more than syntax. Make sure your migration process runs this change in a controlled environment. On large tables, use an online schema change tool like pt-online-schema-change or gh-ost. These avoid locking while applying the new column. Always test migrations against production-copy data before you deploy them to the real system.