Al migrar buzones históricos a la nube, muchos administradores se topan con el temido QuotaExceededException. Comprender por qué surge y cómo resolverlo es clave para una transición a Exchange Online fluida y sin pérdida de datos.
Contexto del problema
Un buzón creado en 2010, con más de 300 000 mensajes y un tamaño que rebasa la cuota estándar de 50 GB, provoca que Exchange Online interrumpa la sincronización. La plataforma detecta que la casilla de origen sobrepasa su límite y responde con MapiExceptionShutoffQuotaExceeded (ec=1245)
. Mientras esa condición persista, el servicio rehusará leer más elementos y el lote de migración quedará en estado Failed.
Descripción del error QuotaExceededException
Fatal error QuotaExceededException encountered.
Migration server response:
MapiExceptionShutoffQuotaExceeded (ec=1245)
El mensaje indica que se alcanzó (o incluso superó) la cuota de “shutoff”. En este umbral Exchange bloquea operaciones para proteger la latencia del sistema —no solo el espacio—; por ello no basta con “un poco” de espacio libre: hay que alejarse del límite.
Causas principales
- Cuota insuficiente (planes de 50 GB) frente a buzones que crecieron durante más de una década.
- Estructuras de carpetas con cientos de miles de elementos que disparan los límites de rendimiento (100 000 items por carpeta).
- Retención legal o hold que impide la eliminación automática, haciendo imposible reducir volumen sin ampliar la licencia.
- Herramientas de migración configuradas en modo Full, que intentan mover todo de una sola vez.
Soluciones rápidas y estratégicas
Objetivo | Medida | Detalles prácticos |
---|---|---|
Aumentar espacio disponible | Expandir la cuota | Ascender el buzón a un plan Exchange Online Plan 2 o Microsoft 365 E3/E5, o bien agregar el complemento “Exchange Online Archiving”. Activa inmediata: bastan minutos para que el servicio reconozca la nueva cuota. |
Reducir tamaño antes de migrar | a) Archivo en línea b) Archivado local de Outlook c) Eliminación selectiva | a) Mueve elementos antiguos a un buzón secundario de archivo sin impacto para el usuario. b) Exporta a PST, descarga y remueve correos poco consultados. c) Depura carpetas que ya no aportan valor; prioriza adjuntos voluminosos. |
Disminuir carga del proceso | Dividir la migración en lotes más pequeños | Configura Migration Batches filtrados por fecha (p. ej. un año a la vez) o por carpeta; así cada lote queda bajo la cuota y bajo el límite de 100 000 elementos. |
Diagnóstico avanzado si persiste el fallo | Recopilar informes y cmdlets | Get‑MigrationBatch , Get‑MigrationStatistics y Get‑MigrationUserStatistics –IncludeReport generan archivos CSV y HTML que describen dónde se atasca la copia. |
Guía paso a paso para cada solución
Aumentar la cuota del buzón
1 . Asigna una licencia con 100 GB (Exchange Online Plan 2, Microsoft 365 E3/E5) desde el Microsoft 365 admin center.
2 . Espera entre 15 y 30 minutos a que el cambio propague.
3 . Reinicia el lote con Resume‑MigrationUser -Identity user@dominio.com
. El proceso retoma desde el último checkpoint y suele avanzar sin volver a fallar.
Habilitar Archivo en línea
1 . Otorga la licencia de Exchange Online Archiving (o usa la incluida en Plan 2/E3/E5).
2 . Activa la característica con Enable‑Mailbox -user@dominio.com ‑Archive
.
3 . Establece una política de retención: New‑RetentionPolicyTag "Inbox > 24 meses" -Type All -AgeLimitForRetention 730 -RetentionAction MoveToArchive
y asígnala con Set‑RetentionPolicy
.
4 . Ejecuta Start‑ManagedFolderAssistant
para forzar el archivado antes de lanzar la migración.
Dividir la migración en lotes
1 . Identifica rangos de fechas con Search-Mailbox
para estimar cuántos elementos moverá cada porción.
2 . Crea el primer lote sólo con correos hasta 2015:
New-MigrationBatch -Name "Historico-2010-2015" -SourceEndpoint OnPremISE -TargetDeliveryDomain tenant.mail.onmicrosoft.com -IncludeFolders "#Inbox/#Sent Items" -ExcludeFolders "#Drafts" -StartAfter (Get-Date)
3 . Una vez completado, habilita IncrementalSync para ese intervalo y lanza el lote siguiente.
Depuración y archivado local
1 . Pide al usuario exportar carpetas grandes a PST desde Outlook (File > Open & Export > Import/Export).
2 . Verifica el tamaño restante con Get-MailboxStatistics
; apunta al valor de TotalItemSize.
3 . Vuelve a iniciar la migración sólo cuando el buzón quede por debajo de 50 GB o tenga ya la licencia ampliada.
Diagnóstico avanzado
Si el lote vuelve a fallar, abre el informe incluido en la propiedad ErrorReport; allí verás líneas con “Stage: CopyingMessages” y la carpeta exacta que produjo el bloqueo. En ocasiones un solo ítem corrupto basta para abortar; mueve ese mensaje al archivo o elimínalo, reinicia y la sincronización continúa.
Límites de Exchange Online que debes vigilar
- 100 GB de buzón principal en la mayoría de planes premium.
- 1,5 TB de buzón de archivo (se expande en tramos de 50 GB conforme se llena).
- 100 000 elementos por carpeta; sobrepasar el límite no detiene la migración, pero la ralentiza drásticamente.
- 500 000 elementos por buzón como umbral de rendimiento recomendado.
- 20 movimientos simultáneos por usuario si empleas Outlook – Import/Export, frente a hasta 150 en un lote nativo Mailbox Migration.
Buenas prácticas de planificación
- Ejecuta
Test-MigrationServerAvailability
para validar credenciales y conectividad. - Sincroniza en horario nocturno y deja la finalización (Complete-MigrationBatch) para fines de semana o festivos.
- Desactiva antivirus en los servidores de origen sólo durante la copia para evitar timeouts.
- Documenta fechas de cut‑over y comunica a los usuarios las ventanas de mantenimiento.
- Aplica compresión a PSTs exportados con Compact Now y guarda avalúos de tamaño para auditar el ahorro.
Automatización recomendada
Conviene orquestar tareas repetitivas con PowerShell. Un script de ejemplo:
$Users = Import‑Csv .\Buzones.csv
foreach ($u in $Users) {
Enable‑Mailbox $u.UserPrincipalName ‑Archive
Start‑ManagedFolderAssistant $u.UserPrincipalName
New‑MigrationBatch -Name "$($u.Alias)-Batch" -CSVData (Get‑Content .\Plantilla.csv | Out-String) `
‑AutoStart -AutoComplete
}
Luego entras a Exchange Admin Center > Migration y supervisas el avance sin intervenir manualmente por cada usuario.
Preguntas frecuentes
¿Qué pasa si rebaso otra vez la cuota después de migrar?
Exchange Online bloqueará envíos y mostrará mensaje de buzón casi lleno. Habilita Archivo en línea o aumenta la licencia.
¿El archivado afecta reglas de retención?
No. Las etiquetas se aplican por separado; puedes tener reglas distintas para buzón principal y archivo.
¿Es posible deshacer la migración si algo sale mal?
Sí, basta con un New‑MigrationBatch
de tipo RemoteMove apuntando de vuelta a la base local. Sin embargo, perderás las ventajas de O365 hasta volver a subir el buzón.
Conclusión
El error QuotaExceededException no es sinónimo de desastre. Con una estrategia que combine ampliación de cuota, archivado inteligente, lotes escalonados y buen diagnóstico, es factible mover buzones de cualquier tamaño a Exchange Online manteniendo la experiencia del usuario y cumpliendo los SLAs de TI.