Avatar billede Slettet bruger
24. maj 2004 - 19:33 Der er 8 kommentarer og
2 løsninger

Konvertere fra Access til Mssql eller Mysql

Jeg har brug for lidt ideer og inspiration til hvordan jeg nemmest foretager den process. Jeg har mulighed for begge typer, så først og fremmest, hvilken er bedst og sikrest at konvertere til? Især er hastigheden en vigtig faktor (det er netop derfor den skal konverteres)

Databasen er p.t. på 75 mb. og indeholder 19 tabeller. Der er lidt over 2000 brugere og skrevet ca. 25000 indlæg i det tilhørende forum, som er bygget over en Snitz model, men med mange moderationer. Jeg har forstået at processen er både vanskelig og mere eller mindre risikabel. Jeg har kigget på en automatiseret process v.h.a. af software, men den frarådes med begrundelse i at der er stor risiko for fejl.

Jeg kan tænke mig at høre nogle forslag til hvordan jeg tackler den opgave. Det vil jo være bedst med en metode hvor indholdet flyttes med på en gang, men jeg er indstillet på at måtte bygge databasen op fra bunden, bare indholdet så kan flyttes rimeligt automatiseret bagefter.

Er der nogle som har erfaring med det?
Avatar billede terry Ekspert
24. maj 2004 - 19:37 #1
the easiest is to convert to MSSQL Server. THere is an upsize wizard in Access which can help.
In the tools+database utilities menu
Avatar billede terry Ekspert
24. maj 2004 - 19:38 #2
Access and MSSQL are more similar than Access and MySQL
Avatar billede arne_v Ekspert
24. maj 2004 - 19:39 #3
Både MySQL og MS SQLserver kan sagtens klare 75 MB - de kan også nemt klare 750 MB.

Generelt vil jeg sige at MySQL performer bedre på low end hardware og er gratis, mens
at MS SQLServer har mere rig SQL dialekt, bedre administrations værktøjer og
nok skalerer bedre til rigtigt meget data.

Dit valg.

Med hensyn til at flytte de 19 tabeller, så er MS SQLServer nem, da Access
indeholder en upsize wizard som kan konvertere din Access database til MS SQLServer.
Men MySQL er heller ike svær. Installer MyODBC og lav link i Access og
kopier data over.

Det største problem kan blive applikationen. Standard SQL er ikke et problem, men
udstrakt brug af VB funktioner i SQL'en kan give store problemer at portere.
Avatar billede Slettet bruger
24. maj 2004 - 20:14 #4
Tak for jeres svar so far.
Valget falder nok på Mssql så, det lyder som den bedste løsning.
Med det i mente, vil jeg gerne spørge lidt mere.

Der er nogle udtryk jeg ikke har helt fat på. Når der tales om sql dialekter, hvad er det så udtryk for - og hvad er det jeg skal kigge efter i min kode for at bedømme om risikoen for komplikationer er stor?

Kan jeg få jer til at lave en rækkefølge af de opgaver jeg skal forvente, altså for eksempel:

1) Oprettelse af ny database på serveren
2) klargøring af den (hvordan)
3) overflytning af tabeller (hvordan gør jeg bedst, med software eller script?)
4) findes der værktøj til at teste om alt er ok efter konv. eller risikerer jeg at skulle løse en masse fejl hen af vejen.
5) Håber I forstår hvor jeg vil hen *S*

Det er netop det sidste Arne V nævner jeg er bekymret for vil ske, at jeg står med en lang række modbydelige problemer efter at der er konverteret, med nedetid og hvad ved jeg til følge. Hvis asp koden var plain som et Snitz er fra starten var jeg ikke så nervøs for det, men da den er modereret i næsten alle filer og udbygget med mange tilføjeser er det en anden sag.

Hvad er fremgangsmåden hvis jeg bruger den upsize wizard i assecc? Kan jeg med den flytte det hele på en gang - og er der overvejende sandsynlighed for at det vil gå godt?

Terry > should I write in english? I suppose you use the translate option, but it doesn't seem to be better translating than I can prefrom *S*
Avatar billede arne_v Ekspert
24. maj 2004 - 20:19 #5
Upsize wizard kan flytte det hele i et hug.

Den plejer at virke udmærket. Så jeg synes at du skal prøve. Det er et
glimrende værktøj.

Og den klarer sådn set del fleste af dine punkter.
Avatar billede terry Ekspert
24. maj 2004 - 20:20 #6
I agree with Arne, you have NOTHING to lose by giving it a try and take it from there.
Avatar billede arne_v Ekspert
24. maj 2004 - 20:20 #7
SQL dialekt dækker over at de forskellige databaser har hver deres
udvidelser til SQL standarden og har man brugt ikke standard features, så
skal man sommetider ind og rette sin SQL kode.
Avatar billede Slettet bruger
24. maj 2004 - 20:35 #8
Jamen så vil jeg da gå i gang med den opgave snarest, det lyder jo til at det er nemmere end jeg lige regner med. Tak for jeres indput gutter!

Lige et sidste spgs. på falderebet.
Er det rigtigt forstået at metoden med den upsize wizard er at hente den eksisterende access db. hjem og "Upsize" den til den tomme mssql som min Udbyder har givet mig på serveren?

Og så lige, hvordan finder jeg ud af om jeg skal bruge den ene eller anden af disse metoder til connection?

1) strConnString = "Provider=SQLOLEDB;Data Source=SERVER_NAME;database=DB_NAME;uid=UID;pwd=PWD;"

2) strConnString = "driver={SQL Server};server=SERVER_NAME;uid=UID;pwd=PWD;database=DB_NAME"
Avatar billede arne_v Ekspert
24. maj 2004 - 20:46 #9
Principielt ja. Men der er lige et lille issue. Du sagde ikke noget om
web hotel.

De fleste web hoteller tillader ikke direkte tilgang til databasen udefra.

Man skal gennem ASP/PHP/JSP.

Men måske tillader dit web hotel direkte adgang. Måske tilbyder
de at upsize. Spørg dem !

Med hensyn til connection string så er der flere muligheder med hensyn til
dribere og med hensyn til security model. Bedste råd er igen: spørg dit
web hotel (eller check deres FAQ).
Avatar billede Slettet bruger
24. maj 2004 - 20:57 #10
Ok, takker igen!
Jeg mener jeg har set et ASP script til formålet i deres vejledninger, men plejer at være meget hjælpsomme, så det går nok. Jeg kan sikkert få dem til at åbne en adgang til mig.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester