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 :

Availibility Group : reconstruction d'un replicat [2017]


Sujet :

Réplications SQL Server

  1. #1
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 228
    Billets dans le blog
    25
    Par défaut Availibility Group : reconstruction d'un replicat
    Bonjour,

    J'ai un cluster à 2 noeuds avec des Availability Groups.

    Suite à un problème de configuration, j'ai dû recréer l'instance SQL de mon second noeud.

    J'ai agis de la manière suivante :
    • bascule de tous les AG en mode primaire sur le noeud 1
    • sortie de toutes les bases des AG du noeud 2
    • suppression de toutes les bases du noeud 2
    • Désinstallation de MSSQL du noeud 2 et réinstallation (avec même niveau de patch que noeud 1, évidemment)
    • Validation de la configuration du cluster ok
    • Copie des logins du noeud 1 sur le noeud 2 (avec mêmes mdp et sid)


    J'ai donc à ce niveau une instance fonctionnelle sur le noeud 2, mais sans AG reconnu.

    Je passe donc sur mon noeud 1 et agis de la manière suivante pour chaque AG
    • Je supprime le réplicat noeud2 (Remove from AG)
      Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
      ALTER AVAILABILITY GROUP [AG-GERES-T02] REMOVE REPLICA ON N'MSSQL-T03';
    • Je rajoute le réplicat noeud 2 : sous l'onglet Listener impossible d'ajouter une quelconque adresse statique. C'est peut-être normal puisque le listener AG, je l'ai créé lors de la création de l'AG primaire. la validation passe avec un warning sur le listener.
    • Le script généré est le suivant
      Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63
      64
      65
      66
      67
      68
      69
      70
      71
      72
      73
      --- YOU MUST EXECUTE THE FOLLOWING SCRIPT IN SQLCMD MODE.
      :Connect mssql-t04
       
      use [master]
      GO
       
      GRANT CONNECT ON ENDPOINT::[Hadr_endpoint] TO [INFRA\sqlservices]
      GO
       
      :Connect mssql-t03
      IF (SELECT state FROM sys.endpoints WHERE name = N'Hadr_endpoint') <> 0
      BEGIN
          ALTER ENDPOINT [Hadr_endpoint] STATE = STARTED
      END
      GO
       
      use [master]
      GO
       
      GRANT CONNECT ON ENDPOINT::[Hadr_endpoint] TO [INFRA\sqlservices]
      GO
       
      :Connect mssql-t03
       
      IF EXISTS(SELECT * FROM sys.server_event_sessions WHERE name='AlwaysOn_health')
      BEGIN
        ALTER EVENT SESSION [AlwaysOn_health] ON SERVER WITH (STARTUP_STATE=ON);
      END
      IF NOT EXISTS(SELECT * FROM sys.dm_xe_sessions WHERE name='AlwaysOn_health')
      BEGIN
        ALTER EVENT SESSION [AlwaysOn_health] ON SERVER STATE=START;
      END
       
      GO
       
      :Connect mssql-t04
       
      USE [master]
      GO
       
      ALTER AVAILABILITY GROUP [AG-GERES-T02]
      ADD REPLICA ON N'MSSQL-T03' WITH (ENDPOINT_URL = N'TCP://192.168.***.****:5022', FAILOVER_MODE = AUTOMATIC, AVAILABILITY_MODE = SYNCHRONOUS_COMMIT, BACKUP_PRIORITY = 50, SECONDARY_ROLE(ALLOW_CONNECTIONS = NO));
      GO
       
      :Connect mssql-t03
       
      ALTER AVAILABILITY GROUP [AG-GERES-T02] JOIN;
       
      GO
       
      :Connect mssql-t04
       
      BACKUP DATABASE [cd30] TO  DISK = N'\\...\dfs\media\dbtransfer\cd30.bak' WITH  COPY_ONLY, FORMAT, INIT, SKIP, REWIND, NOUNLOAD, COMPRESSION,  STATS = 5
       
      GO
       
      :Connect mssql-t03
       
      RESTORE DATABASE [cd30] FROM  DISK = N'\\...\dfs\media\dbtransfer\cd30.bak' WITH  NORECOVERY,  NOUNLOAD,  STATS = 5
       
      GO
       
      :Connect mssql-t04
       
      BACKUP LOG [CD] TO  DISK = N'\\...\dfs\media\dbtransfer\cd.trn' WITH NOFORMAT, INIT, NOSKIP, REWIND, NOUNLOAD, COMPRESSION,  STATS = 5
       
      GO
       
      :Connect mssql-t03 (je vou s fais grace des 50 autres bases)
       
      RESTORE LOG [CD] FROM  DISK = N'\\...\dfs\media\dbtransfer\cd.trn' WITH  NORECOVERY,  NOUNLOAD,  STATS = 5
       
      GO
    • L'AG apparaît sur mon noeud 2
    • Les bases sont backupées et restaurées sur le noeud 2
    • par contre, elles restent dans un état désynchronisé, avec des bases secondaires en mode recovery...
    • Dans l'errorlog, je trouve des messages de type
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      Message
      The database 'CD' is marked RESTORING and is in a state that does not allow recovery to be run.


    Une idée sur la marche à suivre que je fais faux ?
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 029
    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 : 22 029
    Billets dans le blog
    6
    Par défaut
    N'aurais tu pas oublié d'agir au niveau du cluster windows par hasard ???

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 228
    Billets dans le blog
    25
    Par défaut
    ... et bien je n'ai rien fait au niveau du cluster Windows, si ce n'est valider la configuration, puisqu'à l'origine il fonctionnait, et que je n'ai qu'impacté l'installation MSSQL.
    mais je me dirige sur une autre piste : apparemment, il faut joindre les bases en sus
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  4. #4
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 228
    Billets dans le blog
    25
    Par défaut
    Joindre les bases après configuration
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Connection Timeouts in Multi-subnet Availability Group
    Par thierryinfo2012 dans le forum Réplications
    Réponses: 5
    Dernier message: 06/03/2019, 16h10
  2. Réponses: 1
    Dernier message: 05/11/2015, 20h21
  3. [2012] Migrations MDF/LDF avec AlwaysON availability group
    Par DBA_OCP dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 27/04/2015, 16h09
  4. [2012] Backup d'une base se trouvant dans un Availability group
    Par mb10 dans le forum Administration
    Réponses: 2
    Dernier message: 26/08/2013, 15h29
  5. Réponses: 2
    Dernier message: 03/11/2008, 19h09

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