[SQL Agent] Lancer une macro Excel

Pour un client qui voulait automatiser la génération de fichiers Excel en fonction de paramètres situé dans un autre fichier Excel, j’ai créer un package SSIS qui lit le fichier de configuration, remplace quelques valeurs dans le fichier puis lance la macro.

Ok rien de fou dans tout ça, je developpe, ça fonctionne … parfait.
On déploie, créé un petit job SQL agent, on lance et PAFF ! Aucun résultat !
Le Job se termine étonnement vite et surtout sans erreur. Le fichier est copié dans un autre répertoire mais pas modifié !
 Poursuivre la lecture

[SQL Server] Déplacer les fichiers d’une base

Un petit article simple mais toujours utile, déplacer les fichiers (data ou log) d’une base.

Ca peut est très utile lorsque l’on change un disque, ajoute un nouveau disque et que l’on veut déplacer un fichier dessus, et souvent quand on s’est trompé en restaurant un base en dev !

Bref quelques commandes simples permettent de bouger tout ça, et les voici !

 Poursuivre la lecture

[SQL Server] Compression des backup par défaut

Aujourd’hui, un petit truc très simple, mais qui permet de sauvegarder de l’espace disque très rapidement : activer la compression des backup par défaut sur une instance.

Rien de plus simple, il suffit d’aller voir la valeur actuelle du paramètre via :

Ensuite regarder quelle est la valeur actuelle (run_value) pour le paramètre « backup compression default » et la remplacer :

Si l’on regarde les valeurs de configuration, on verra que le (config_value) passe à 1, mais la run_value reste inchangé, il faut pour la valider dire à l’instance de se reconfigurer :

C’est tout bon !

Si pour un autre paramètre, après la reconfiguration la run_value ne change pas, c’est que le paramètre nécessite un redémarrage de l’instance.

Bon paramétrage pour le reste des valeurs et à vos risques et périls !

[SQL Server] Liste des processus en cours

Une de mes requêtes fétiche : Savoir ce qu’il se passe sur l’instance sans avoir à utiliser le moniteur d’activité qui est très gourmand en ressource.

Pour le détail des champs, on retrouve ceux du monitoring, je vais faire les principaux :

  • Database : La base sur laquelle est exécuté la requête.
  • Nt_UserName : L’utilisateur connecté
  • Individual Query : La requête en cours d’exécution
  • status : Le statut de la requête en cours
  • wait : Permet de savoir si la requête est en attente et/ou bloqué avec le blocking_session_id pour savoir quel processus la bloque.
  • Parent Query : Le bloc contenant la requête en cours
  • Start_time : Le début de la requête

 Poursuivre la lecture

[SSISDB] Scripter un environnement

En ce moment, j’expérimente de plus en plus SSISDB, et une des fonctionnalités qu’il me manque souvent, c’est de pouvoir scripter un environnement.

Il est toujours possible de faire dès le début, à la création, mais une fois enregistré, c’est foutu ! Or pour basculer d’un environnement à un autre, effectué une livraison, c’est bien souvent plus simple de scripter l’environnement qui a été créé.
 Poursuivre la lecture