Do we need to take any actions before Sitecore mainstream support expiry if we are not upgrading? What would be the impact if we don't upgrade before mainstream support expiry?
I would imagine like most products out on the market. Nothing happens.
In general, customers paying their yearly dues for support ensures that they can receive product updates and support from Sitecore.
Perhaps based on what support level you are at, you may receive limited or no support from Sitecore unless you are on a version that is still supported. For this you should check with your sales rep.
The product no longer receives any updates unless Sitecore deems the fix critical. Generally you will see a KB article released announcing a security vulnerability along with the proposed fix until you upgrade.
In the event you do decide to upgrade, you can safely expect that web and database servers will need to be upgraded.