Meilleur auteur de réponses
Problème basculement Base de données dans SharePoint 2010

Question
-
Bonjour,
j'ai une base de données dans SharePoint qui ne veut pas basuler lors de l'arret de l'instance principale.
En regardant, elle n'est pas reconnu par SharePoint dans l'instance de secours et quand je lance le script suivant j'ai le message d'erreur ci-dessous.
$db = get-spdatabase | where {$_.Name -eq "XXX"}
$db.AddFailoverServiceInstance("Nom serveur\Instance")
$db.Update()
$db | select name, failoverserverMerci par avance pour votre aide.
Cdt.
jeudi 6 décembre 2012 10:10
Réponses
-
alors, il convient de séparer les soucis ;)
- Sharepoint 2010 doit prendre en charge le failover pour les bases sharepoint, à condition de l'avoir correctement enregistré.
- Pour tes bases applicatives, la chaine de connexion doit être automatiquement utilisée par le runtime dans le code custom (rien à voir avec sharepoint)
Il est tout à fait possible que le dernier cas ne marche qu'avec .NET 4.0 et SQL native client, ce que j'ai utilisé. Je n'ai pas regardé les prerequis.
Emmanuel ISSALY - Architecte Infra Sharepoint (MCITP 2010)
edit: au pire, si cela ne marche pas, un bon vieux try catch fera l'affaire... :-)
(try principal catch try secondaire)
- Modifié Emmanuel ISSALY vendredi 7 décembre 2012 10:51
- Proposé comme réponse Marc LognoulModerator vendredi 7 décembre 2012 10:53
- Marqué comme réponse Anis HADDAD lundi 10 décembre 2012 10:42
vendredi 7 décembre 2012 10:49
Toutes les réponses
-
Bonjour,
Il est très probable que l'objet $DB soit vide (nom de la DB incorrect ou autre problème lié à l'accessibilité/disponibilité de la DB?).
Que donne la propriété $DB.Status?
De quelle DB s'agit-il?
Marc Lognoul [Infrastructure Expert]
My Site/Mon Site | MyBlog [EN] | Mon Blog [FR] | Twitter | LinkedIn
- Marqué comme réponse Anis HADDAD jeudi 6 décembre 2012 10:38
- Non marqué comme réponse Anis HADDAD jeudi 6 décembre 2012 10:39
jeudi 6 décembre 2012 10:25Modérateur -
Bonjour,
nom de la DB incorrect ou autre problème lié à l'accessibilité/disponibilité de la DB?: tout est bon à la première vue.Que donne la propriété $DB.Status: ça ne renvoi rien
De quelle DB s'agit-il: une base de workflows spécifique
Cordialement.
jeudi 6 décembre 2012 10:44 -
Il s'agit donc d'une DB non SharePoint? Dans ce cas elle ne sera pas prise en charge par les outil de gestion natifs (CA, PowerShell, API...). Il faudra passer par du mirroring/failover SQL directement, sous réserve que cette base de donnée et ses fonctionnalités le supportent.
Marc Lognoul [Infrastructure Expert]
My Site/Mon Site | MyBlog [EN] | Mon Blog [FR] | Twitter | LinkedIn
jeudi 6 décembre 2012 10:49Modérateur -
Bonjour C'est déjà fait côté sql, mais pourquoi SharePoint ne la reconnait pas lors de la bascule?
Merci par avance.
jeudi 6 décembre 2012 11:10 -
Parce que SharePoint ne provoquera le basculement que de ses propres bases de données. Pour basculer des DB non SharePoint, il faudra passer pas les fonctionnalités natives SQL.
Marc Lognoul [Infrastructure Expert]
My Site/Mon Site | MyBlog [EN] | Mon Blog [FR] | Twitter | LinkedIn
- Proposé comme réponse Gokan OzcifciMVP jeudi 6 décembre 2012 12:12
jeudi 6 décembre 2012 11:18Modérateur -
Bonjour,
Merci pour votre réponse, mais le mirroring est déjà en place, est-ce qu'il faut autre chose?
Cordialement.
jeudi 6 décembre 2012 13:10 -
Ci-dessous les procédures de failover:
Manuel: http://msdn.microsoft.com/fr-fr/library/ms186348(v=sql.105).aspx
Automatique: http://technet.microsoft.com/fr-fr/library/ms175191(v=sql.105).aspx (Avec témoin)
N'oubliez pas de modifier l'article en fonction de la version de SQL Server que vous utilisez.
Marc Lognoul [Infrastructure Expert]
My Site/Mon Site | MyBlog [EN] | Mon Blog [FR] | Twitter | LinkedIn
- Proposé comme réponse Marc LognoulModerator vendredi 7 décembre 2012 10:53
jeudi 6 décembre 2012 13:23Modérateur -
Hello,
Sauf erreur, tu peux utiliser le failover pour tes bases applicatives dans .NET en le mettant dans la chaîne de connexion :
Data Source=myServerAddress;Failover Partner=myMirrorServerAddress;Initial Catalog=myDataBase;Integrated Security=True;
Comme Marc le signale, la bascule peut être auto ou manuelle. On suppose ici que le failover sera up si le principal est down. Le timeout est reglable, je crois par defaut 10 secondes.
Emmanuel ISSALY - Architecte Infra Sharepoint (MCITP 2010)
- Proposé comme réponse Marc LognoulModerator vendredi 7 décembre 2012 10:53
vendredi 7 décembre 2012 10:36 -
Bonjour,
@Emmanuel: merci pour ta réponse, j'ai déjà ajouté la chaine de connexion dans le webconfig de la webApp sur tous les serveurs (WF et applicatif) et ça n'a rien donné. Au niveau de sql, les bases basculent pas de soucis mais sharepoint ne detecte pas la bascule pour cette base :-(
Cordialement.
vendredi 7 décembre 2012 10:40 -
alors, il convient de séparer les soucis ;)
- Sharepoint 2010 doit prendre en charge le failover pour les bases sharepoint, à condition de l'avoir correctement enregistré.
- Pour tes bases applicatives, la chaine de connexion doit être automatiquement utilisée par le runtime dans le code custom (rien à voir avec sharepoint)
Il est tout à fait possible que le dernier cas ne marche qu'avec .NET 4.0 et SQL native client, ce que j'ai utilisé. Je n'ai pas regardé les prerequis.
Emmanuel ISSALY - Architecte Infra Sharepoint (MCITP 2010)
edit: au pire, si cela ne marche pas, un bon vieux try catch fera l'affaire... :-)
(try principal catch try secondaire)
- Modifié Emmanuel ISSALY vendredi 7 décembre 2012 10:51
- Proposé comme réponse Marc LognoulModerator vendredi 7 décembre 2012 10:53
- Marqué comme réponse Anis HADDAD lundi 10 décembre 2012 10:42
vendredi 7 décembre 2012 10:49 -
Bonjour Magic_Tun,
Pourrais-tu nous tenir au courant de tes démarches svp?
Pourrions-nous considérer les réponses de Marc et Emmanuel comme réponses définitves?
Merci,
Gokan
My New Technical Blog: WWW.GKNZCFC.NET
SharePoint Community Expertlundi 10 décembre 2012 10:06