Websites can be migrated from one server to the other without any downtime or less downtime, provided that you know what you are doing. We migrate with zero downtime, as we have been doing things since a long time.
1st thing you need to do is to setup you Nginx properly, as rewrite rules work in a different way in Nginx, so if you are a beginner, you must read nginx docs and other stuff, before you do emulation.
After configuring nginx, you should copy the files to new server that includes db as well as wp files. Then use this
https://github.com/tg123/chrome-hostadmin
Firefox plugin and you can emulate the website and test if everything is working or not, without doing any dns changes, this is the same procedure we do at rankmyhub. I should not share our tricks, but i thought to help you.
So emulation is best part, you know if things are working or not without making dns changes to original live site. After testing that everything is working fine, you will reduce the TTL at source server records and then do the migration by doing the final step i.e., DNS changes and done.
All the best with migration, also install another firefox addon to flush your computer or laptop dns. Helpful if you do not know how to flush dns manually.
Thanks