|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : septembre 2004 Messages : 6 ![]() |
Bonjour
Nous avons créé un grand nombre de lot DTS dans SQL SERVER 2000 sous un environnement de DEV pour les besoins d'une application et nous cherchons à les recopier sur notre serveur de prod. Ma question est donc la suivante : Existe t'il une fonctionnalité SQL server ou un outil permettant de dupliquer des lots d'un server vers un autre ? Sachant que la génération de script est possible pour les bases de données, les tables, les procédures stockées etc ... Merci d'avance |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() ![]() |
Bonjour,
Tu peux par exemple tous les ouvrir et les resauver sur l'autre serveur. Ou tu peux apparemment copier msdb..sysdtspackages, comme indiqué dans cet article : http://www.databasejournal.com/featu...le.php/1461521
__________________
Rudi Bruchez Consultant indépendant modélisation, administration, optimisation, formation, solutions MS SQL Server et informatique libre. MCDBA, MCITP, MCT, SCJP2 - http://www.babaluga.com/ Articles et tutoriels : http://rudi.developpez.com/ LIVRE : Optimiser SQL Server |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : septembre 2004 Messages : 6 ![]() |
Merci beaucoup
C'est vrai pourquoi faire simple quand on peut faire compliquer. Je n'y avais pas pensé, désolé et merci. |
|
|
00
|
|
|
#4 | ||
|
Membre confirmé
![]() Inscription : octobre 2005 Messages : 344 ![]() |
je l'ai essayé et ça marche super bien. J'ai légérement modifié le code pour n'en copier qu'un seul de la sorte:
Citation:
Par contre, je voudrais maintenant passer le nom du lot en paramètre. J'ai essayé ça: Citation:
Quelqu'un aurait une idée ?? |
||
|
|
00
|
|
|
#5 |
|
Expert Confirmé
![]() ![]() |
Salut,
"Ca ne marche pas" est en général pas assez descriptif pour qu'on puisse en faire qqch. Comment exactement cela ne marche pas ? Tu as mis ton code dans une tâche "Execute SQL" ? Tu as mappé le paramètre avec la variable globale dans les options de ta tâche ? Ton code SQL est parsé correctement par la tâche ? As-tu essayé d'encapsuler le code dans une procédure stockée pour l'exécuter depuis ta tâche ?
__________________
Rudi Bruchez Consultant indépendant modélisation, administration, optimisation, formation, solutions MS SQL Server et informatique libre. MCDBA, MCITP, MCT, SCJP2 - http://www.babaluga.com/ Articles et tutoriels : http://rudi.developpez.com/ LIVRE : Optimiser SQL Server |
|
|
00
|
|
|
#6 | ||
|
Membre confirmé
![]() Inscription : octobre 2005 Messages : 344 ![]() |
EN fait, j'ai suivi les instructions décrites dans ton lien:
http://www.databasejournal.com/featu...le.php/1461521 J'ai donc créé mes deux connections et ma tâche de transformations de données. Dans celle-ci, j'ai choisi "requête SQL" dans laquelle j'ai mis le code ci-dessus. En remplaçant le : Citation:
Citation:
Je ne sais pas si j'ai été suffisamment clair. |
||
|
|
00
|
|
|
#7 |
|
Expert Confirmé
![]() ![]() |
Ok, j'ai compris. C'est clair.
Je pense que le parseur SQL du DTS est assez peu intelligent, j'ai déjà eu des problèmes de ce type. Là, comme tu as une sous-requête, il est certainement perdu. La solution la plus simple à mon avis est d'encapsuler le code dans une procédure stockée, et ensuite de faire un appel du genre
__________________
Rudi Bruchez Consultant indépendant modélisation, administration, optimisation, formation, solutions MS SQL Server et informatique libre. MCDBA, MCITP, MCT, SCJP2 - http://www.babaluga.com/ Articles et tutoriels : http://rudi.developpez.com/ LIVRE : Optimiser SQL Server |
|
|
00
|
|
|
#8 |
|
Membre confirmé
![]() Inscription : octobre 2005 Messages : 344 ![]() |
Génial ... Ca marche super bien. J'ai créé une procédure dans la base MSDB (y a-t'il un mal à ça d'ailleurs ?) et je l'exécute depuis le lot DTS.
Mes développeurs n'ont plus besoin d'aller magouiller sur la prod pour leur lots maintenant. Nous avons fait un test et c'est OK. Merci de votre aide ... Ca fait un moment que je cherchait une solution de ce genre. |
|
|
00
|
|
|
#9 |
|
Membre confirmé
![]() Inscription : octobre 2005 Messages : 344 ![]() |
Toujours dans la même optique ... Quand je transporte mes lots DTS de la recette vers la prod, j'ai un problème avec les chaines de connexion, ainsi que les noms des serveurs qui ne sont pas forcément les mêmes ... La procédure citée plus haut transporte le lot tel quel d'un serveur vers l'autre...
Y-at'il un moyen de remplacer tout ça par des variables . Qui seraient renseignées par des variables globales ou des fichiers .ini ? |
|
|
00
|
|
|
#10 |
|
Expert Confirmé
![]() ![]() |
Bonjour,
Oui, tu peux gérer ta chaîne de connexion avec un fichier ini par exemple. Regarde la tâche "Dynamic Properties" (de mémoire) de DTS.
__________________
Rudi Bruchez Consultant indépendant modélisation, administration, optimisation, formation, solutions MS SQL Server et informatique libre. MCDBA, MCITP, MCT, SCJP2 - http://www.babaluga.com/ Articles et tutoriels : http://rudi.developpez.com/ LIVRE : Optimiser SQL Server |
|
|
00
|
|
|
#11 |
|
Membre confirmé
![]() Inscription : octobre 2005 Messages : 344 ![]() |
Ok, merci rudib ...
Grâce à tes recos, j'ai trouvé le site suivant si ça interresse quelqu'un: http://www.databasejournal.com/featu...le.php/3073161 |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com