Précédent   Forum des professionnels en informatique > Bases de données > Sybase
Sybase Forum sur la base de données Sybase. Avant de poster -> F.A.Q Sybase, Tutoriels Sybase
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/06/2007, 13h54   #1
Nouveau Membre du Club
 
Inscription : février 2006
Messages : 107
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : février 2006
Messages : 107
Points : 39
Points : 39
Par défaut SYBASE ASE : lien entre deux serveurs différents

Bonjour,
J'utilise un ETL qui veut pas faire ce que je veux a savoir mettre les données d'une table à une autre.
Je soupsonne que c'est du au fait que mes deux serveurs ne soient pas de la meme langue.
Cependant pour verifier ca, je veux faire une requete de type
insert select
Cependant comme les deux tables sont sur deux serveurs différents j'imagine qu'il faut que je crée une vue ou un lien ou autre chose pour faire cette requete.
Quelqu'un pourrait il m'expliquer comment faire.
Merci d'avance
n.roussaly est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2007, 15h23   #2
Membre habitué
 
Inscription : mars 2006
Messages : 293
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 293
Points : 140
Points : 140
Oui on appel cela les "proxy tables" cela te fait une tables distante sur un serveur cible qui voit cette table comme l'une d'elle et permet du requettage. Il faut que tu regarde donc les proxy tables a ce sujet.
arona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2007, 16h21   #3
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
Cette fonctionalité utilise le CIS (Component Integration Architecture).

Pour permettre à un utilisateur de la base "A" à accéder à une table de la base "B" il faut commencer par mettre en place certains droits.

1. Positionner le mode "enable cis" (via sp_configure) sur la base source et destination.
2. Si on est en 12.0 ou avant, configurer "max remote cis connections" (via sp_configure). Ce paramètre est obsolète en 12.5.
3. S'assurer que le serveur distant est définit dans le fichier interfaces (ou sql.ini) local.
4. Ajouter le serveur distant à sysservers via sp_addserver.
5. Ajouter le mapping du user local au user distant via sp_addexternlogin.

Une fois que c'est fait, on peut tester la connexion, par example avec une requête utilisant sp_remotesql.

Si c'est OK, on crée la table proxy localement pour accéder à la table distante:
Code :
1
2
 
CREATE existing TABLE ma_table (liste des colonnes) at "SERVEUR.base.owner.table"
ou
Code :
1
2
 
CREATE proxy_table ma_table at "SERVEUR.base.owner.table"
Il est évidemment suggéré de bien lire la documentation sur le fonctionnement de CIS avant de mettre ce genre de chose en production!

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2007, 17h12   #4
Nouveau Membre du Club
 
Inscription : février 2006
Messages : 107
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : février 2006
Messages : 107
Points : 39
Points : 39
Merci beaucoup pour ce tuto tres détaillé...
Bon ben maintenant il s'agit de négocier les droits avec les dba
n.roussaly est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2007, 18h01   #5
Membre habitué
 
Inscription : mars 2006
Messages : 293
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 293
Points : 140
Points : 140
Mickael peut on faire cela sur des tables system (sous master et/ou mabase ..) ???
arona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 08h07   #6
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
Absolument.

Je l'ai fait récemment pour pouvoir syncroniser les syslogins entre deux serveurs:
Code :
1
2
3
4
5
 
USE dbadb
go
CREATE proxy_table jour_syslogins at "REMOTE.master.dbo.syslogins"
go
Enuite on fait un peu de travail dans une proc stockée pour s'assurer que les information dans les deux tables sont identiques.

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 09h53   #7
Membre habitué
 
Inscription : mars 2006
Messages : 293
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 293
Points : 140
Points : 140
Merci à toi, pour moi c'est pour la vérification entre deux bases en répli en comparant la table sysobjects pour le nombre de tables ect ...
Thx
arona est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h00.


 
 
 
 
Partenaires

Hébergement Web