Thank you very much David and Matthew.
One of the very important point at our business is that we must respect a 99.99 SLA as our website has constantly a lot of simultaneous connections. That said, most of them are read-only connections.
Lucky we are, we have a backup of the production database so I can run as many times as I want the upgrade procedure.
So basically, I will run the upgrade from 7 to 8, 8.1, 8.2 and 9 manually, then I will probably extract the UpgradeProcedure.cs from each version and create an automated upgrade tool!
Thank you so much for these precious informations guys!!!