Confirming what boaz said, during bootstrap Strapi syncs the schema and the database (the “automatic schema migrations”) so that all tables/columns match. The only reason it wouldn’t run is if forceMigration=false.
Also note that in v5 we’ve added an internal migration system as well, which will also run before user migrations.
You should only need user migration files for project-specific needs that aren’t handled by default.