Articles

System X Null

Posted by admin

Reiniciar el servicio SQL después del período de prueba y continuar usándolo

El problema suele ocurrir cuando se ejecuta una instancia de evaluación de SQL Server y el período de evaluación ha expirado. Le mostraré una solución alternativa, que le permite continuar usando SQL aunque haya caducado.

El período de evaluación ha expirado, diálogo de SQL Management Studio.
Error de SQL Server 17051" al intentar iniciar el Servidor SQL server ...
Al intentar iniciar el servicio después de que el período haya expirado, Error 17051

Ha encontrado, como yo, el vencimiento de una instancia SQL.Es posible que no tenga una licencia SQL disponible en este momento, pero necesita usar SQL o SQL Management Studio. Al menos para extraer sus datos para posibles nuevas instalaciones.
Antes de continuar, debo mencionar que la administración de SQL studio ahora se ha vuelto gratuita. En realidad, no necesita preocuparse por la licencia vencida para los SSM. Puede descargarlo de forma gratuita desde Microsoft. El enlace está aquí: https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms
Los servicios SQL analizan la hora del sistema para determinar si la licencia todavía está dentro del período de evaluación. Por lo tanto, al cambiar el tiempo dentro del período de evaluación, podrá iniciar el servicio. Cuando haya terminado, vuelva a la normalidad. 🙂
En otras palabras, está extendiendo el período de prueba de SQL.
Notas. Algunos de ustedes han informado que no funciona a partir de SQL2016. Si tienes que trabajar con SQL2016 o superior. Sírvanse formular observaciones.
Lo siguiente ha sido confirmado por los usuarios:

  • SQL Server 2016 WS 2016
  • SQL Server 2017 WS 2019
  • SQL Server 2019 (nota: ajuste el tiempo a un máximo de 180 días)

Cómo:

Servicios abiertos. En este ejemplo, puede ver que el servicio no se está ejecutando y que el tiempo ha pasado de la expiración:

Si se inicia el servicio, se le solicitará error 17051, que es la caducidad de error.

Ahora, si devuelvo el tiempo del sistema dentro de la fecha de caducidad, podré iniciar el servicio sin error e iniciar SQL management studio.

Recuerde volver la hora a la fecha original o las fechas insertadas serán incorrectas.

Aquí hay un script de powershell para automatizar la tarea. Edita como te sientas.

El script obtiene la fecha actual, restar 360 (esto se puede cambiar para que coincida con el período de evaluación de 180). Inicia todos los servicios con SQL en el nombre, espera a que se inicien y, a continuación, vuelve a la normalidad.

$currentDate = Get-Date // Get current date
$pastTime = $currentDate.AddDays(-360) // Substract 1 year
set-date $pastTime // set current time to the past
Start-Service -Name "*sql*" -ErrorAction SilentlyContinue // Try to start the service
$areServicesStopped = $true // Check for service
while($areServicesStopped){ // Loop trying to get service up
$serviceStatus = get-service -Name "*sql*" | select status
if ($serviceStatus -notlike "Stopped") {
$areServicesStopped = $false
}
Start-Sleep -Seconds 1
}
$currentDate = $pastTime.AddDays(360) // Set date time to current date
set-date $currentDate

Notas:

Related Post

Leave A Comment