Oscar.
Esto es algo muy variado. Te explico. Cuando una base de datos se inicia lo primero que hace es revisar su log para verificar que todas las transacciones que este guarda estén íntegras en la BD. Si tu BD está en Full Recovery, la BD tomará su log para rehacer todas las operaciones que le quedaron pendientes y dejar los datos en un estado íntegro, que al fin y al cabo es la idea de una BD. Es importante dejar que la BD realize este proceso naturalmente porque es parte de forma de actuar. Si está durando mucho significa que es muy transaccional y le cuesta tiempo recuperar todas las transacciones que tiene pendiente.
Te puedo aconsejar tres acciones, si alguna te interesa:
1) Utiliza Simple o Bulk-Logged Recovery en vez del Full si no te interesa realizar estas recuperaciones. Ten en cuenta que esto te va causar un problema a nivel de disponibilidad y pérdida de datos.
2) Otra acción, si no te importa la recuperación, es borrar el log de la base de datos antes de que se inicie el servicio. SQL Server se encargará de recrearlo cuando inicie.
3) Hacer el reinicio de tu máquina en una ventana de tiempo (En la madrugada puede ser) donde el tiempo no afecte tanto.
Saludos.
Loría.