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

Administration SQL Server Discussion :

Problème user/schéma après restauration


Sujet :

Administration SQL Server

  1. #1
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 106
    Points
    3 106
    Par défaut Problème user/schéma après restauration
    Bonjour à tous,

    depuis quelques jours et la restauration d'une base de données (MSSQL 2005), une de mes applis ne parviens plus à insérer ou updater des données dans ladite base.

    L'appli en question utilise le compte super admin de l'instance SQL et les requêtes qu'elle effectue sont extrêmement simples :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO [dbo].[maTable] ...
    La base de données a donc été restaurée hier et depuis, à chaque appel de la requête ci-dessus, j'obtiens le message :
    Nom d'objet 'dbo.maTable' non valide.
    Dans Management Studio, si je teste la même requête sans le schéma dbo devant le nom de la table, l'insert fonctionne.

    Je ne comprends pas ce qui a pu se passer. Auriez-vous une idée de la cause du problème et éventuellement un moyen pour le résoudre ?

    D'avance merci.

  2. #2
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Bonjour,

    Quel compte de connexion utilisez vous quand vous dites superadmin ?
    Est ce le compte sa ou un compte de connexion (et utilisateur) que vous utilisez ?

    ++

  3. #3
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 106
    Points
    3 106
    Par défaut
    MikeDavem, par SuperAdmin j'entendais bien "sa".

  4. #4
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut
    Bonjour,

    As-tu restauré sur le même serveur ?

    Une piste :
    Si les collations ne sont pas les mêmes, il se peut que les requêtes ne fonctionnent plus car la casse des objets n'est pas la bonne...

  5. #5
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 106
    Points
    3 106
    Par défaut
    La restauration a bien eu lieu sur le même serveur.
    La collation n'a pas changé.

    Une piste peut-être : sur la même instance SQL, j'avais une copie de la base de prod (avant restauration) dont je me servais pour des tests.
    Celle-ci n'a pas été restaurée et ne pose aucun problème.

    Schéma ou pas, les requêtes passent sans problème.

  6. #6
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut


    une autre piste alors :

    La base par défaut pour "sa" était sur la base restaurée, et depuis la restauration ça n'est plus le cas depuis la restauration.
    Si ton appli ne sélectionne explicitement pas la base en question...

    Est-ce que c'est la seule requete qui ne fonctionne pas ? ou est-ce que les autres requêtes de ton appli te donnent la même erreur ?

  7. #7
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 106
    Points
    3 106
    Par défaut
    aieeeuuuuu, merci pour ton aide.

    Alors, voila le contexte complet :
    - la bdd en question est la base d'une appli métier sur laquelle j'ai ajouté quelques procs stocks pour insérer ou mettre à jour des données dans 4 tables (et uniquement celles-ci)
    - toutes les requêtes dans les procs stock utilisent cette forme : [dbo].[maTable]

    J'ai essayé de supprimer le [dbo] dans toutes les proc stocks mais j'ai le même message d'erreur.

    En comparant les autorisations sur les quatre tables par rapport à la base de test, je me suis aperçu que tous les rôles existant sur la base de test (pour ces 4 tables) sont absents des tables de la base de prod.
    J'ai ajouté les mêmes autorisations à la mano mais rien n'y a fait.

    Concernant l'appli qui attaque la base de prod, il s'agit en fait d'un webservice.
    La base attaquée est donc définie dans le fichier de config du webservice.
    Rien n'a changé du côté de cette appli.

  8. #8
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 899
    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 899
    Points : 53 140
    Points
    53 140
    Billets dans le blog
    6
    Par défaut
    Quel est le propriétaire de la base ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT db.name AS DATABASE_NAME, 
           sp.name AS OWNER_NAME
    FROM   sys.databases AS db
           INNER JOIN sys.server_principals AS sp
                 ON db.owner_sid = sp.sid
    Si c'était un compte SA et que vous avez effectué la restauration en rentrant dans SSMS sous un compte windows (ou l'inverse), ce, comportement est normal.

    Dans ce cas, changez le propriétaire de la base !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    EXEC sp_changedbowner ...
    A +

  9. #9
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 106
    Points
    3 106
    Par défaut
    Merci pour votre réponse.

    Le propriétaire de la base de prod (comme de la base de test) est 'sa'.

    Définitivement, je ne comprends pas ce qui ne va pas.

  10. #10
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 899
    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 899
    Points : 53 140
    Points
    53 140
    Billets dans le blog
    6

  11. #11
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 106
    Points
    3 106
    Par défaut
    Merci à vous deux pour votre aide.
    Je viens enfin de comprends l'origine du problème. Nulle question de droit ou de schéma ici, l'utilisateur ayant effectué la restauration a en fait modifié un caractère dans le nom de la base...

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

Discussions similaires

  1. Problème après restauration de la session
    Par adrian07 dans le forum Sécurité
    Réponses: 2
    Dernier message: 08/04/2010, 11h27
  2. Erreur apres restauration d'une base sur nouveau serveur
    Par tribune dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 03/02/2006, 15h54
  3. Réponses: 1
    Dernier message: 10/01/2006, 22h37
  4. Problème spécification - Schéma relationel n-aire
    Par Invité dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 13/04/2005, 11h05
  5. Problèmes d'espaces après requete SQL
    Par innosang dans le forum Bases de données
    Réponses: 7
    Dernier message: 29/04/2004, 16h47

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