Articles

System X Null

Posted by admin

Redémarrez le service SQL après la période d’essai – et continuez à l’utiliser

Le problème se produit généralement lorsque vous exécutez une instance d’évaluation de SQL Server et que la période d’évaluation a expiré. Je vais vous montrer une solution de contournement, qui vous permet de continuer à utiliser SQL même s’il a expiré.

La période d’évaluation a expiré, boîte de dialogue SQL Management Studio.
 Erreur SQL Server 17051 " lors de la tentative de démarrage du serveur SQL...
Lorsque vous essayez de démarrer le service après l’expiration de la période, erreur 17051

Vous avez rencontré, comme moi, l’expiration d’une instance SQL.Vous n’avez peut-être pas de licence SQL en main pour le moment, mais vous devez utiliser SQL ou SQL Management Studio. Au moins pour extraire vos données pour d’éventuelles nouvelles installations.
Avant de continuer, je dois mentionner que la gestion de SQL studio est désormais gratuite. Vous n’avez pas réellement besoin de vous soucier de la licence expirée pour SSMS. Vous pouvez le télécharger gratuitement auprès de Microsoft. Le lien est ici : https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms
Les services SQL examinent l’heure du système lorsque vous déterminez si la licence est toujours dans la période d’évaluation. Ainsi, en changeant le temps de retour au cours de la période d’évaluation, vous pourrez démarrer le service. Lorsque vous avez terminé, réglez l’heure à la normale. 🙂
En d’autres termes, vous prolongez la période d’essai SQL.
Notes. Certains d’entre vous l’ont signalé ne pas fonctionner à partir de SQL2016 et plus. Si vous le faites fonctionner avec SQL2016 ou supérieur. Veuillez commenter.
Ce qui suit a été confirmé par les utilisateurs:

  • SQL Server 2016 WS 2016
  • SQL Server 2017 WS 2019
  • SQL Server 2019 (remarque: réglez le temps sur 180 jours maximum)

Comment:

Ouvrir des services. Vous pouvez voir que le service n’est pas en cours d’exécution et que le temps est bien au-delà de l’expiration dans cet exemple:

Si le service est démarré, il vous demandera l’erreur 17051, qui est une erreur d’expiration.

Maintenant, si je retourne l’heure système dans la date d’expiration, je pourrai démarrer le service sans erreur et démarrer SQL management studio.

N’oubliez pas de revenir à la date d’origine ou les dates insérées seront erronées.

Voici un script powershell pour automatiser la tâche. Modifiez comme vous le ressentez.

Le script obtient la date actuelle, soustrait 360 (cela peut être modifié pour correspondre à la période d’évaluation 180). Démarre tous les services avec SQL dans le nom, attendez qu’ils démarrent, puis rétablissez l’heure normale.

$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

Notes:

Related Post

Leave A Comment