Did you open an SR for this? This is a highly database intensive process. The node you are running the upgrade from should be as close to the database server as possible (same data center) to avoid multiple hops across the network. This line from your description is probably the key to why this took so long but without looking at the log files to see on what steps the time was all spent or if it was just overall incredibly slow because of the network or db replication. In general these times are way longer than I would expect for this upgrade. How long did it take for an upgrade in the lower environments?
In SQlserver they did always on(high availability) on secondary db as well during the update process. I believe that is what caused the slowness in the pega update .