IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réplications SQL Server Discussion :

Copie Base de données SQL


Sujet :

Réplications SQL Server

  1. #1
    Candidat au Club
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Août 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Directeur commercial

    Informations forums :
    Inscription : Août 2015
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Copie Base de données SQL
    Bonjour,

    Pour un de mes clients, j'ai besoin de copier des bases SQL d'une instance A (production) sur une instance B (Recette).
    Cette copie doit être automatisée car les informations doivent être à jour sur la recette.

    Je voulais faire simple en créant des .bat avec le planificateur de tâche
    Arrêt SQL
    Copie des bases
    Démarrage SQL

    Sur le site, j'ai lu un article comme quoi c'est une mauvaise pratique contre-performante.
    Donc je me lance dans la copie via SQL Agent dans le Management Studio.

    Mon problème est que tout s'exécute sauf la dernière étape en erreur. J'ai plusieurs infos d'erreurs mais mon niveau de connaissance n'es pas suffisant.
    J'avais 12 erreurs que j'ai réduit à 8

    Je pourrais mettre le .txt (un vrai pavé) mais voici ce qui ressort en erreur :
    Le nom de l'objet «*Packages SSIS copiés.*» n'est pas valide. Le nom ne peut pas contenir les caractères suivants*: / \*: [ ] . = (je ne vois pas de caractère particuliers et ne vois pas le nom de ce package...)

    10:21:33,13/06/2023 10:21:33,-2147381246,0x,Code d'avertissement SSIS DTS_W_MAXIMUMERRORCOUNTREACHED. La méthode Execution a réussi, mais le nombre d'erreurs détectées (8) a atteint le maximum autorisé (1)*; aboutissant à un échec. Ceci se produit lorsque le nombre d'erreurs atteint le nombre spécifié dans MaximumErrorCount. Modifiez la valeur de MaximumErrorCount ou résolvez les erreurs.
    J'ai bien envie de changer cette valeur mais je ne sais pas où cela se change d'une part et 8 erreurs me parait élevé. Cela ne fait pas très propre....

    Je ne sais pas s'il existe un tuto (en français...) ou un post expliquant cette partie de SQL mais je suis preneur de vos aides...

    Merci
    seb

  2. #2
    Membre expérimenté Avatar de AaâÂäÄàAaâÂäÄàAaâÂäÄ
    Homme Profil pro
    db@
    Inscrit en
    Septembre 2021
    Messages
    515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : db@

    Informations forums :
    Inscription : Septembre 2021
    Messages : 515
    Points : 1 505
    Points
    1 505
    Par défaut
    Citation Envoyé par schampilou Voir le message
    Je voulais faire simple en créant des .bat avec le planificateur de tâche
    Arrêt SQL
    Copie des bases
    Démarrage SQL
    Quelle horreur
    Pourquoi ne pas faire simplement des backups / restore sql ?
    Ou de la réplication avec always on si le besoin est d'avoir une mise à jour en temps réel.

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 922
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 922
    Points : 51 717
    Points
    51 717
    Billets dans le blog
    6
    Par défaut
    La solution dépend de plusieurs facteurs notamment la fréquence de rafraichissement des données.
    Par exemple s'il s'agit de faire cela une fois pas jour alors une simple sauvegarde/restauration, est ce qu'il y aura de plus rapide...

    A +

  4. #4
    Candidat au Club
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Août 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Directeur commercial

    Informations forums :
    Inscription : Août 2015
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Il s'agit de faire une copie toutes les nuits.

    Et oui.... les .bat c'est très moche...
    Je vais regarder vos solutions

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 721
    Points : 1 880
    Points
    1 880
    Par défaut
    J'ai l'impression que ce que l'on veut, c'est rajouter des données à une DB consolidée.
    Dans ce cas, un backup/restore n'est probablement pas ce qu'on veut. Ce sera plutôt une réplication de tables, en partant du principe que le serveur recette a les mêmes structures de tables.
    Je doute que l'on veuille copier d'autres objets tels que procédures stockées, packages SSIS etc.
    Mais il faudrait clarifier ce besoin.

    Je pense qu'il devrait être possible de faire en sorte que la réplication ne se fasse qu'à certain intervalles mais c'est à creuser: https://learn.microsoft.com/en-us/sq...l-server-ver16

    Mais évidemment, il doit y avoir un plan de backup indépendant à côté de tout ça.

    PS: je vous invite très fortement à créer une DB de test pour valider le processus... j'espère que c'est déjà le cas.

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 922
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 922
    Points : 51 717
    Points
    51 717
    Billets dans le blog
    6
    Par défaut
    Dans bien des cas, pour des petites bases (moins de 100 Go) le backup restore sera moins complexe et moins couteux. Juste trois commandes :
    • BACKUP
    • CPOPY
    • RESTORE



    A +

  7. #7
    Candidat au Club
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Août 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Directeur commercial

    Informations forums :
    Inscription : Août 2015
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Merci pour vos retours,

    Je vais mieux expliquer la demande.

    J'ai un serveur SQL
    BDD de Prod avec
    • Base1, Base2, Base3


    Sur ce même serveur SQL, j'ai une seconde instance BDD de Test qui est vide actuellement.

    Le client souhaite que Base1, Base2, Base3 soit dupliquées sur la BDD de Test et que les données de ces bases soient mises à jour régulièrement (1x par jour suffirait)
    Sur cette BDD de Test, il veulent connecter des outils BI pour travailler sur les données.

  8. #8
    Membre expérimenté Avatar de AaâÂäÄàAaâÂäÄàAaâÂäÄ
    Homme Profil pro
    db@
    Inscrit en
    Septembre 2021
    Messages
    515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : db@

    Informations forums :
    Inscription : Septembre 2021
    Messages : 515
    Points : 1 505
    Points
    1 505
    Par défaut
    Copies sur une instance différente mais sur le même serveur + 1 fois par jour => le Backup / Restore semble tout indiqué, tu n'as même pas à déplacer les .bak
    C'est quoi la taille des bds ?

  9. #9
    Candidat au Club
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Août 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Directeur commercial

    Informations forums :
    Inscription : Août 2015
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Voici la taille des bases
    Nom : Capture d’écran 2023-06-14 à 16.29.40.png
Affichages : 210
Taille : 23,9 Ko

  10. #10
    Membre expérimenté Avatar de AaâÂäÄàAaâÂäÄàAaâÂäÄ
    Homme Profil pro
    db@
    Inscrit en
    Septembre 2021
    Messages
    515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : db@

    Informations forums :
    Inscription : Septembre 2021
    Messages : 515
    Points : 1 505
    Points
    1 505
    Par défaut
    Des petites bds en somme
    La solution la plus simple et la plus rapide : backup / restore

  11. #11
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 922
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 922
    Points : 51 717
    Points
    51 717
    Billets dans le blog
    6
    Par défaut
    Si j'ai bien compris, sur une même machine vous avez deux instances de SQL Server : l'une pour la production et l'autre pour les tests ?

    Si oui il n'est pas conseillé de rester dans cette situation, car les instances vont se faire concurrence sur les ressources de la machine.

    A +

  12. #12
    Candidat au Club
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Août 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Directeur commercial

    Informations forums :
    Inscription : Août 2015
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Concernant le backup/restore, il est possible de le planifier dans SSMS ?

    Pour les différents serveurs, OK, je remonte l'information auprès du client.

    Merci beaucoup

  13. #13
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 394
    Points
    18 394
    Par défaut
    Dans SSMS non, mais dans SSIS oui.

  14. #14
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 922
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 922
    Points : 51 717
    Points
    51 717
    Billets dans le blog
    6
    Par défaut
    Dans l'Agent SQL aussi. C'est même fait pour ça !

    A +

Discussions similaires

  1. Copie base de donnée Sql server vers MySql
    Par france38 dans le forum Développement
    Réponses: 2
    Dernier message: 06/04/2011, 13h47
  2. C++ et base de donnée SQL
    Par wawet dans le forum MFC
    Réponses: 2
    Dernier message: 07/04/2005, 18h11
  3. requête SQL avec paramètre en vb avec base de donnée SQL srv
    Par dialydany dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 01/02/2005, 11h33
  4. probleme base de donnée SQL server
    Par waguila666 dans le forum ASP
    Réponses: 9
    Dernier message: 01/12/2004, 12h54
  5. Réponses: 3
    Dernier message: 29/03/2004, 19h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo