Finally can steady happy poon pee pee. Just unplug my SIM card from my old mi4i and plug into my mi max.
This is what I did to transfer my data...
1. Media files (mainly photos, screenshot and videos)
Copy Camera folder under DCIM from old to new using a USB to go adapter as the mi4i does not support SD card ( so lousy right

)
2. SMS and call history
I used mi mover and just select this 2 items to move from old to new. Process was quite easy and fast.
3. WhatsApp
I followed i1magic's instructions to copy the WhatsApp folder and delete all files under Database folder except msgstore.db.crypt12. Then I installed WhatsApp and restore the backup. However I am not sure if the restore was from the files that I copied over or from Google drive so this part is still a bit fuzzy. But anyway it is working.
4. Contacts
I didn't realise my contacts were actually stored with my mi account so that got ported when I login to mi account on the mi max.
5. Apps
I reinstalled most apps . Not many actually just couple of games and some news app. Some of the apps which I seldom used on old phone were not reinstalled. Some games data were restored from google play and tied to my Google account (eg clash of clans) so the transfer was fairly seamless.
I think I got almost 95% of stuffs that I needed migrated already. Anything that I missed are probably not important. My next step would be to figure out how to do a proper backup of the phone as my quota on mi cloud is already busted. I think all my stuffs are stored on too many different places so I will need to figure out what is the best way to consolidate them to one place, preferably on Google. Mi cloud should probably be a secondary backup for the kiasu part of me.
Would be great if anyone can share their backup strategy. Kind of worrying now with 128gb of storage, if anything goes wrong, a lot of data will be lost.
Anyway, thanks once again to all on this thread for your kind help