Articles

System X Null

Posted by admin

Riavviare il servizio SQL dopo il periodo di prova e continuare a utilizzarlo

Il problema si verifica in genere quando si esegue un’istanza di valutazione di SQL Server e il periodo di tempo di valutazione è scaduto. Ti mostrerò una soluzione alternativa, che ti consente di continuare a utilizzare SQL anche se è scaduto.

Periodo di valutazione è scaduto, dialogo SQL Management Studio.
Errore SQL Server 17051 " quando si tenta di avviare SQL Server ...
Quando si tenta di avviare il servizio dopo la scadenza del periodo, Errore 17051

Hai riscontrato, come i, la scadenza di un’istanza SQL.Si potrebbe non avere una licenza SQL in mano in questo momento, ma hanno la necessità di utilizzare SQL o SQL Management Studio. Almeno per estrarre i dati per eventuali nuove installazioni.
Prima di continuare, dovrei menzionare che SQL studio management ora è diventato gratuito. In realtà non è necessario preoccuparsi della licenza scaduta per SSMS. È possibile scaricarlo gratuitamente da Microsoft. Il collegamento è qui: https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms
I servizi SQL guardano l’ora del sistema quando determinano se la licenza è ancora entro il periodo di valutazione. Quindi, cambiando il tempo indietro entro il periodo di valutazione, si sarà in grado di avviare il servizio. Quando hai finito, imposta il tempo alla normalità. 🙂
In altre parole, si sta estendendo il periodo di prova SQL.
Note. Alcuni di voi hanno segnalato che non funziona da SQL2016 in su. Se hai funzionato con SQL2016 o superiore. Si prega di commentare.
Quanto segue è stato confermato dagli utenti:

  • SQL Server 2016 WS 2016
  • SQL Server 2017 WS 2019
  • SQL Server 2019 (nota: regolare il tempo di max 180 giorni)

Come:

Servizi aperti. Puoi vedere che il servizio non è in esecuzione e il tempo è ben oltre la scadenza in questo esempio:

Se il servizio viene avviato, verrà richiesto l’errore 17051, ovvero l’errore di scadenza.

Ora, se riaccendo il tempo di sistema entro la data di scadenza, sarò in grado di avviare il servizio senza errori e avviare SQL management studio.

Ricorda di riportare l’ora alla data originale o le date inserite saranno errate.

Ecco uno script powershell per automatizzare l’attività. Modifica come ti senti.

Lo script ottiene la data corrente, substract 360 (questo può essere modificato per corrispondere al periodo di valutazione 180). Avvia tutti i servizi con SQL nel nome, attendi che vengano avviati, quindi imposta l’ora alla normalità.

$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

Note:

Related Post

Leave A Comment