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

 Firebird Discussion :

Migration d'une base Interbase 6 vers Firebird 2.5


Sujet :

Firebird

  1. #1
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Points : 56
    Points
    56
    Par défaut Migration d'une base Interbase 6 vers Firebird 2.5
    Bonjour à tous,

    Je dois migrer une base Interbase 6.0 en FireBird 2.5
    Quelques questions relatives aux réglages, dans l'état de l'art :
    - SQLDialect
    - CharacterSet
    - Role

    - concernant le SQLDialect, je n'ai aucune procédure stockée et je peux aisément batcher mes tables via un programme Delphi si l'opération de backup/restore entre Interbase et Firebird ne marche pas
    - concernant le CharacterSet, je voudrais me tourner vers de l'UNICODE, même si pour le moment je n'en ai pas le besoin
    - concernant le Role, je n'ai pas d'idée précise sur les fonctionnalités apportées par cette propriété

  2. #2
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Si c'est vous qui avez créé la base interbase 6 ou qui avez migré vers interbase 6. Vous avez du choisir le dialect 3.

    Et donc il n'y a pas de changement de dialect. Sous Fb2.5 utilisez le dialect 3.

    Lorsque j'ai migré de fb 2.0 (ou1.5) vers 2.1 j'ai du respecter la procédure décrite dans le sous rétertoire de firebird misc\upgrade\metadata j'imagine qu'il vous faudra y passer également avec fb2.5. Avant fb2.1 tout ce qui est métadata était sans charactere set, ce qui n'est plus le cas. La procédure en question vous permet d'identifier les éventuelles problèmes et vous aide à les corriger.
    Il est vrai que j'ai beaucoup de PS mais il n'y a pas que ca qui peut poser problème, les descriptions d'objets par exemple...


    Pour ce qui est de l'UNICODE, vous dites ne pas en avoir le besoin, donc je serai vous je commencerai par regarder si les applications que vous développez sont prêtes pour l'unicode. Par exemple sous Delphi 6,7 les composants orientés données ne gèrent pas l'UNICODE en natif. Et donc au final d'estimer le travail pour les passer en unicode .

    Dernier point, les ROLES, c'est pour gérer la sécurité de votre base. Lorsque vous créez un utilisateur il faut lui donner les droits sur chacun des objets qu'il aura droit de manipuler. (Ce qui regrésente un certain nombre de grant ...)

    Si la personne part ou n'a plus les même droits et est remplacer par une autre il faut retirer les droit à l'ancienne et donner les droits à la nouvelle ce qui représente encore une fois un certain nombre de grant (et si ce n'est pas une procédure automatique avec le risque d'erreur...)...

    Les ROLEs permettent de gérer plus simplement les droits. Au lieu de donner les droits d'accès aux différents objets à une personnes vous les donnez à un ROLE. Voyez ces roles comme un groupe.
    Vous devez créer et donner les droits à une nouvelle personne, il vous suffit de lui attribuer le ROLE. Plusieurs personnes peuvent utiliser un même ROLE. Et pour retirer les droits d'une personne il suffit de lui retirer son droit d'utiliser le ROLE.

  3. #3
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Points : 56
    Points
    56
    Par défaut
    Bonjour
    Je n'ai pas créé la base Interbase source.
    Par contre j'ai bien crée la base Destination sous Firebird 2.5 en SQLDialect 3 et CharacterSet WIN1252.

    Lorsque je fais un backup en mode Transportable Format et que je restaure sous FireBird en mode Replace Existing Database tout semble OK.

    A l'ouverture de la base j'ai le message d'erreur suivant :
    Databse SQL Dialect 1 does not support rerefence to TIME datatype.

    Comment dois je faire pour batcher ma base Interbase vers Firebird.
    Car je n'ai 'que' 142 tables popur un volume de 800 Mo.
    J'ai bien tenté d'exporter en SQL le contenu de ma base Source et de rejouer le script d'insertion dans la base destination.
    Mais pour les grosse stables, le temps de traitement est impensable, sachant que j'ai 6 bases de données (en volumétrie à peu prés similaire) à convertir.

    Je prends toutes les solutions.

    Merci pour votre aide.

  4. #4
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Points : 56
    Points
    56
    Par défaut
    La seule solution que j'ai trouvé pour le moment est de faire un
    GFIX -sql_dialect 3 sur la base.

    Peut on être certain que cela n'a en rien altéré les données contenus dans la base ?

  5. #5
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Cela dépend du type de vos données...

    Le gfix ne convertie pas une base dialect 1 en dialect 3 il ne fait que changer la valeur du dialect. Autrement dit vous risquez bien de corrompre votre base.

    Notamment si vous avez des données de type DATE ou numeric/Decimal avec une précision supérieur à 9 NUMERIC(10,2) par exemple.

    Il y a 2 méthodes pour changer de dialect.
    La première consiste à recréer une base en dialect 3 et utiliser un programme qui va transférer toutes les données.

    La seconde 'manuelle' et est plus compliquée et risquée si vous vous trompez est décrites dans "Migration Guide (IB 5.x and below to IB 6.0)"
    http://firebirdsql.org/index.php?op=doc#category_9.

    Vous pouvez également consulter ce sujet http://www.developpez.net/forums/d10...ment-dialecte/

  6. #6
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Points : 56
    Points
    56
    Par défaut
    OK je vais donc m'orienter vers la solution 1 même si cela met du temps, cela garantira l'intégrité des donnes me semble t il ...


    Merci pour vos réponses éclairées

Discussions similaires

  1. [9.1] Migration d'une base 8.4 vers 9.1 : problème oid
    Par oslin dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 15/05/2013, 15h49
  2. Migration d'une base 6.5 vers 2000 ou mieux 2005
    Par Labienus dans le forum Administration
    Réponses: 3
    Dernier message: 19/02/2010, 15h52
  3. Migration d'une base de 8i vers 9i
    Par Keke des Iles dans le forum Oracle
    Réponses: 1
    Dernier message: 22/06/2005, 16h52
  4. Migration d'une base Access vers une base PostgreSQL
    Par ttalourd dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 22/11/2004, 16h59
  5. migration d'une base de mssql vers postgre sql
    Par dim_italia dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 06/08/2004, 22h56

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