Depende.
Primero, si tiene una base de datos realmente grande que abarca múltiples máquinas, entonces todo (no solo la actualización de la base de datos) será doloroso. (No importa cuánto haya planeado con anticipación).
En segundo lugar, actualizar una base de datos NO es solo una cuestión de base de datos, sino que también depende del sistema más grande del que forma parte la base de datos. Esto también incluye la implementación de la base de datos (muchos servidores de bases de datos, múltiples centros de datos, configuraciones maestro-esclavo, etc.)
El dolor puede aliviarse mediante la arquitectura de los componentes del sistema de modo que todos tengan algún tipo de "conocimiento" del evento de cambio de esquema de DB. Esto significa que todo el sistema debe ser tolerante a los cambios de esquema y puede responder a él de una manera "sensata".
Puede consultar una utilidad desarrollada por Facebook para abordar las actualizaciones del esquema MySQL.
Además, existen prácticas recomendadas estándar como convertirlo en maestro de solo lectura, realizar cambios en esclavos o en copias de desarrollo, etc.
En cualquier caso, es imprescindible tener una copia de seguridad completa y un amplio conjunto de pruebas . Solo entonces, puede hacer cualquier cambio con confianza y seguridad.