Always fun spending a day upgrading

First of all I would use the Unity hub to easily switch between versions.

Second: I would check the forum before switching to find out what the troubles would be.
The textmeshpro problems and possible fixes are discussed here:

What i do myself is copy the project to an other location and run that copied project with the new unity version to see whats going on. After testing i decide to take the (sometimes) dreaded step to migrate.

I myself have moved my project on and on from Unity 4.6 to 2017.4.4f1 so i have seen it all.
My project broke very bad a few times even at the point I had to do the animations over. Its the price to pay for getting to the new features at times. Most annoying is Assets that are not working anymore and are not updated by their creators. Lucky Unity now has LTS releases wish are maintained for 2 years. So i stick to 2017.4 myself until perhaps 2018.3 just to get the nested prefabs.

Good luck!