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 07/05/2007, 11h20   #1
Invité régulier
 
Inscription : mai 2007
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 30
Points : 7
Points : 7
Par défaut [ASE->MSSQL]Migration de shema sybase sous SOLARIS

Bonjour tt le monde, voici mon probleme :

je dois exporter le shema d une base de donnee Sybase (qui tourne sous SOLARIS) et qui est exploite via l outil Xmanager installe sous win NT. la base de donnee de destination est MSQL server 2005.

Est ce que Sybase Central peut etre utilise via Xmanager pour extraire le fichier DDL ou bien il y a une autre solution (un script isql par exemple )? ...

MERci.
DBA_doom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2007, 11h50   #2
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
Sybase Central (dans les versions à peu près récentes) inclus un outil d'extraction de DDL: ddlgen.

Par contre, il faut prévoir un peu d'adaptation, puisque la syntaxe T-SQL Sybase n'est pas identique à celle de Microsoft.

Alternativement des outils commes PowerDesigner (aussi appelé PowerAMC en France) peuvent être utilisé.

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/05/2007, 11h57   #3
Invité régulier
 
Inscription : mai 2007
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 30
Points : 7
Points : 7
Merci de m avoir repondu si rapidement.
Le probleme c est que je sais pas comment acceder a cet outil (Sybase central) a travers Xmanager.
DBA_doom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2007, 12h10   #4
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
Je ne connais pas Xmanager, mais un check rapide dans Google indique qu'il s'agit (entre autre) d'un serveur X pour Windows. Si c'est le cas il faut simplement ouvrir un shell (terminal) dans l'environnement Solaris et lancer Sybase Central (la commande exacte à lancer dépend de la version de Sybase qui est installée). Il faut chercher un script appelé scjview.sh dans l'arborescence Sybase.

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/05/2007, 12h24   #5
Invité régulier
 
Inscription : mai 2007
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 30
Points : 7
Points : 7
c un bon debut.
un peu d histoire pour se mettre sur la meme longueur d onde : le grand probleme c que j ai pas acces moi meme au centre ou se trouve notre base Sybase. il y a une autre personne qui a l acces ms qui connait pas trop en informatiques, il ne fais qu executer des scripts et prendre les resultats sous forme de fichiers.
Ceci dit, il me faut lui donner un script qui fait tt, a savoir donner en output le fichier DDL.
est ce que je peux utiliser ce chemin que j ai trouve sur google, si c est un chemin par default je crois qu il fera l affaire :
$SYBASE/shared/sybcentral43
DBA_doom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2007, 13h45   #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
Il faut déjà savoir quelle version d'ASE tourne sur le serveur.

S'il s'agit de 12.5 ou plus récent, alors tu peux exécuter ddlgen directement:

Code :
1
2
 
$SYBASE/ASEP/bin/ddlgen -U<user> -P<password> -Shostname:port -D<nom_base> >fichier_output.sql
Donc, par exemple si le nom du host est "db1", que Sybase écoute sur le port 5000, et qu'on veut extraire le DDL de la base "production":

Code :
1
2
 
$SYBASE/ASEP/bin/ddlgen -Usa -Ppassword_sa -Sdb1:5000 -Dproduction >fichier_output.sql
Par contre, si c'est une version plus ancienne de Sybase ASE alors tu n'aura pas ddlgen installé. Dans ce cas la situation est plus compliquée.
Une possibilité est dbschema.pl (http://www.midsomer.org), mais cela requiert l'installation de perl et sybperl, ce qui est peut-être compliqué.

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/05/2007, 17h25   #7
Invité régulier
 
Inscription : mai 2007
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 30
Points : 7
Points : 7
Merci pour cet alternative, ms j ai encore un petit probleme concernant le numero de port et le password. En effet, les parametres utilises par l administrateur sont reunie ds une variable de la forme :
DBPARAMS="-U${CSDUSR} -P${CSDPWD} -S${CSDSRV} -w1000"

sachant que les variables CSDUSR CSDPWD CSDSRV sont connues (utilisateur, password , nom du serveur).

la question est la suivante : est ce que c est possible d utiliser DBPARAMS comme parametre de ddlgen ?

c a d : ddlgen $DBPARAMS >fichier_DDL.sql
DBA_doom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2007, 17h50   #8
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
Oui, mais CSDSRV doit être modifié pour être de la form "host:port" plutôt que le nom de serveur référencé dans le fichier interfaces, et il faut supprimer le -w1000 que DDLGEN ne comprend pas.

Le fichier interfaces se trouve dans $SYBASE, et dans ce fichier on peut trouver le hostname et le port à utiliser pour CSDSRV.

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/05/2007, 18h57   #9
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

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

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
En ce qui concerne le DDL,PowerAMC est plus "futé" que DDLGen et peut transformer un script ASE en un SQL d'un coup de cuillère à pot.

Les 2 T-SQL sont sensiblement différents.

Sinon, pour le transfert, pourquoi ne pas utiliser bcp de Sybase en option -c pour l'export, et bcp in MS-SQL toujours en option -c pour l'import ?

Quant au terminal X, oui, Sybase Central de Sun Solaris est utilisable en Terminal X, mais pourquoi alors ne pas utiliser le Sybase Central sous Windows directement ?
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql
Administrateur SAP
Mes articles

Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !
fadace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/05/2007, 11h49   #10
Invité régulier
 
Inscription : mai 2007
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 30
Points : 7
Points : 7
Un tres grand merci a vous. J ai pu generer mon fichier DDL. une autre question pour la phase du forward engineering. On a un outil qui s appelle Rational Rose avec license, est ce qu il peux faire la conversion du shema Sybase vers la base de donnee MSQL server 2005 ? (la version date de 2002) ou bien j ai besoin d un outil comme celui que vs avez recommande a savoir power AMC.
DBA_doom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/05/2007, 17h50   #11
Invité régulier
 
Inscription : mai 2007
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 30
Points : 7
Points : 7
j ai attenndu vos reponses tte la journee http://www.developpez.net/forums/ima...s/icon_sad.gif. je sais pas si vs aveez une reponse a ma derniere question ou pas, en tout cas j espere que vs etes tous en bonne sante. Merci pour mpeppler anisi qu a fadace, sans vos conseils je n aurai jamais avance d un pas.
DBA_doom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/05/2007, 18h20   #12
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

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

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
Rational le fera peut-être, mais PowerAMC est meilleur pour ce qui est de la génération du code.
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql
Administrateur SAP
Mes articles

Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !
fadace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2007, 11h31   #13
Invité régulier
 
Inscription : mai 2007
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 30
Points : 7
Points : 7
bonjour les amis,

j ai pu generer mon fichier DDL (fichier.sql), le probleme c est qu il ne me permet pas de creer les tables. il contient pas les commande (create Table ...). est ce que le commande : Generate Database Objects DDL est celle que je dois utiliser sous Sybase central ou il y a une autre ?? Help
DBA_doom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2007, 12h11   #14
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
Je ne crois pas qu'il y ait une autre commande.
Il faut bien faire attention de ne pas cocher les options dans le pop-up, puisque les options cochées sont exclues de l'output.

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 11/05/2007, 12h32   #15
Invité régulier
 
Inscription : mai 2007
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 30
Points : 7
Points : 7
ca parait logique puisque qd tu coche le tout, le script devient quasiment vide.
merci pr cette precieuse remarque
DBA_doom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/05/2007, 17h11   #16
Invité régulier
 
Inscription : mai 2007
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 30
Points : 7
Points : 7
Rebonjour tt le monde,
Merci pour votre aide concernant la creation du fichier DDL, j ai rien coche et ca marche. pourtant j arrive pas a faire le reverse enginnering en utilisant le logiciel Rational Rose. si qlq sait comment faire meme avec Power AMC j en serais tres reconnaissant. ma base de donnee de destination est Oracle 9.
Sybase 12 ---> Oracle 9

un extrait de mon script DDL est le suivant :

************************************************
************************************************

-----------------------------------------------------------------------------
-- DDL for Database 'GRAN_seg1'
-----------------------------------------------------------------------------
print 'GRAN_seg1'
go

use master
go

create database GRAN_seg1 on datadev2 = 16500, logdev1 = 1000, datadev1 = 13500, datadev3 = 7057, datadev4 = 5760, datadev5 = 833, datadev6 = 7350
log on datadev2 = 1000, logdev1 = 2000, logdev2 = 7400
with override
go


-----------------------------------------------------------------------------
-- DDL for User 'brf'
-----------------------------------------------------------------------------
print 'brf'

use GRAN_seg1
go

exec sp_adduser 'brf'
go


-----------------------------------------------------------------------------
-- DDL for User 'nwsa'
-----------------------------------------------------------------------------
print 'nwsa'

use GRAN_seg1
go

exec sp_adduser 'nwsa'
go


-----------------------------------------------------------------------------
-- DDL for Table'GRAN_seg1.dbo.CELL_GPRS_OL'
-----------------------------------------------------------------------------
print 'Creating Table GRAN_seg1.dbo.CELL_GPRS_OL'
go

use GRAN_seg1
go

setuser 'dbo'
go

create table CELL_GPRS_OL (
ID int not null ,
MO char(16) not null ,
CFAIL int not null ,
ALLPDCHSCANSUB numeric(15,0) null ,
PREEMTPDCHSUB numeric(15,0) null ,
ALLPDCHACCSUB numeric(15,0) null ,
ALLPDCHACTACCSUB numeric(15,0) null ,
MC19DLSCHEDSUB numeric(15,0) null ,
MC19DLACKSUB numeric(15,0) null ,
MC19ULSCHEDSUB numeric(15,0) null ,
MC19ULACKSUB numeric(15,0) null ,
CS14DLSCHEDSUB numeric(15,0) null ,
CS14DLACKSUB numeric(15,0) null ,
CS12DLSCHEDSUB numeric(15,0) null ,
CS12DLACKSUB numeric(15,0) null ,
CS12ULSCHEDSUB numeric(15,0) null ,
CS12ULACKSUB numeric(15,0) null ,
LDISRRSUB numeric(15,0) null ,
IAULRELSUB numeric(15,0) null
)
lock allpages
on 'default'
go


setuser
go

-----------------------------------------------------------------------------
-- DDL for Index 'I_CELL_GPRS_OL_cluster'
-----------------------------------------------------------------------------
print 'Creating Index I_CELL_GPRS_OL_cluster'
go

create unique clustered index I_CELL_GPRS_OL_cluster
on GRAN_seg1.dbo.CELL_GPRS_OL ( ID, MO)
with ignore_dup_key
go


-----------------------------------------------------------------------------
-- DDL for Table'GRAN_seg1.dbo.SYSTEM_VLR_DATA'
-----------------------------------------------------------------------------
print 'Creating Table GRAN_seg1.dbo.SYSTEM_VLR_DATA'
go

use GRAN_seg1
go

setuser 'dbo'
go

create table SYSTEM_VLR_DATA (
ID int not null ,
MO char(16) not null ,
CFAIL int not null ,
PROCLOAD real not null ,
ACCLOAD real not null ,
NSCAN real not null ,
NOFFORG real not null ,
NOFFIEX real not null ,
NFTDORG real not null ,
NFTDIEX real not null ,
NOFFMLO real not null ,
NOFFMHI real not null ,
NFTDMLO real not null ,
NFTDMHI real not null ,
NCAPREQ real not null ,
NCAPREJ real not null ,
NOFFPRIO real not null ,
NOFFNPRIO real not null ,
NFTDPRIO real not null ,
NFTDNPRIO real not null ,
NOFFTCAP real not null ,
NFTDTCAP real not null ,
RESTARTSM real not null ,
RESTARTSA real not null ,
RESTARTLM real not null ,
RESTARTLA real not null ,
RELOADM real not null ,
RELOADA real not null ,
DOWNTIME real not null ,
ACTSUB real not null ,
HLRSUB real not null ,
ONWSUB real not null ,
ATTSUB real not null
)
lock allpages
on 'default'
go


setuser
go

-----------------------------------------------------------------------------
-- DDL for Index 'I_SYSTEM_VLR_DATA_cluster'
-----------------------------------------------------------------------------
print 'Creating Index I_SYSTEM_VLR_DATA_cluster'
go

create unique clustered index I_SYSTEM_VLR_DATA_cluster
on GRAN_seg1.dbo.SYSTEM_VLR_DATA ( ID, MO)
with ignore_dup_key
go


-----------------------------------------------------------------------------
-- DDL for Table'GRAN_seg1.dbo.CELLREL_INDEX_S_CELL_T_CELL'
-----------------------------------------------------------------------------
print 'Creating Table GRAN_seg1.dbo.CELLREL_INDEX_S_CELL_T_CELL'
go

use GRAN_seg1
go

setuser 'dbo'
go

create table CELLREL_INDEX_S_CELL_T_CELL (
MO_ID int not null ,
MO char(16) not null ,
REL char(1) not null ,
SOURCE_BSC char(16) not null ,
SOURCE_CELL char(16) not null ,
TARGET_BSC char(16) not null ,
TARGET_CELL char(16) not null
)
lock allpages
on 'default'
go


setuser
go

-----------------------------------------------------------------------------
-- DDL for Index 'I_CELLREL_INDEX_S_CELL_T_CELL'
-----------------------------------------------------------------------------
print 'Creating Index I_CELLREL_INDEX_S_CELL_T_CELL'
go

create unique clustered index I_CELLREL_INDEX_S_CELL_T_CELL
on GRAN_seg1.dbo.CELLREL_INDEX_S_CELL_T_CELL ( MO_ID, SOURCE_BSC, SOURCE_CELL, TARGET_CELL)
with ignore_dup_key
go


-----------------------------------------------------------------------------
-- DDL for Index 'CELLREL_IDX_S_CELL_T_CELL_NCLI'
-----------------------------------------------------------------------------
print 'Creating Index CELLREL_IDX_S_CELL_T_CELL_NCLI'
go

create nonclustered index CELLREL_IDX_S_CELL_T_CELL_NCLI
on GRAN_seg1.dbo.CELLREL_INDEX_S_CELL_T_CELL ( SOURCE_CELL, TARGET_CELL)
go


-----------------------------------------------------------------------------
-- DDL for Index 'I3_CELLREL_INDEX'
-----------------------------------------------------------------------------
print 'Creating Index I3_CELLREL_INDEX'
go

create nonclustered index I3_CELLREL_INDEX
on GRAN_seg1.dbo.CELLREL_INDEX_S_CELL_T_CELL ( SOURCE_CELL)
go
***************************************************
***************************************************
MErci
DBA_doom est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h47.


 
 
 
 
Partenaires

Hébergement Web