AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Firebird DB nach MySql portieren
Thema durchsuchen
Ansicht
Themen-Optionen

Firebird DB nach MySql portieren

Ein Thema von DataCool · begonnen am 15. Feb 2007 · letzter Beitrag vom 16. Feb 2007
Antwort Antwort
Seite 1 von 3  1 23      
Benutzerbild von DataCool
DataCool

Registriert seit: 10. Feb 2003
Ort: Lingen
909 Beiträge
 
Delphi 10.3 Rio
 
#1

Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 11:56
Datenbank: Firebird • Version: 1.0.79 • Zugriff über: über BDE
Hi Leute,

ich benutze momentan bei einem Projekt die oben genannte Firebird Datenbank.
Die Datenbank -Datei ist ca. 500 MB groß und es arbeitem ca.
2-10 User simultan übers Netzwerk auf der datenbank.

Umso größer die Datenbank wird, desto langsamer werden die Guis die auf die DB zugreifen.

Deshalb würde ich gerne mal zum Test bei mir das ganze lokal auf MySql umstellen,
jetzt stehe ich aber vor dem Problem wie ich meine Firebird Datenbank nach MySql portiere.

Das MySQL Migration Programm hat in der Quelldatenbank leider keine Firebird Datenbank zur Auswahl.
Und jetzt die Struktur von Hand anzulegen und die Daten dann per eigenem Programm rüber schieben wollte ich eigentlich vermeiden.

Hat jemand eine Idee ?

Greetz DataCool
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 12:00
Mein Mercedes, welche ich mit meinem Fahrrad ziehe, ist mir zu langsam, deshalb kaufe ich mir jetzt einen Uno.
Versuche mal die BDE zu beerdigen, den sie (das Fahrrad) ist das Problem.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DataCool
DataCool

Registriert seit: 10. Feb 2003
Ort: Lingen
909 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 12:05
Hi,

das die BDE das ganze ausbremst, weiß ich auch.
Ich muss die Datenbank aber so oder so nach MySql portieren!

Deshalb bleibt die oben genannte Frage bestehn

Greetz DataCool
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
795 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 12:09
Schau dir mal die Interbase Datapump an. Die sollte in beide Richungen Daten und auch Datenstrukturen pumpen können.

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Benutzerbild von DataCool
DataCool

Registriert seit: 10. Feb 2003
Ort: Lingen
909 Beiträge
 
Delphi 10.3 Rio
 
#5

Re: Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 12:32
Hi,

sieht ganz gut aus, leider lässt sich bei dem Tool nur bei der Source-DB die Art der Datenbank auswählen.
Target/Destination DB ist immer Firebied/Interbase.

Greetz DataCool
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#6

Re: Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 15:16
Entscheidend ist die MySql-Version und die wurde nicht genannt. 8) Habe mal eine FB-DB ins Internet gestellt. Provider hatte aber nur MySql 3 oder eher 4. Das ging ganz einfach. Lokal geht aber wohl genauso. Zuerst wird mit IBExpert die Tabellenstruktr mitsamt den Daten in Datei exportiert. Also auch die Data Tables auswählen. Diese Datei habe ich dann ins Internet verfrachtet. Eventuell ist es bei MySQL 5 anders, aber bei mir begann dann ein Trauerspiel (alles zusammen hat allerdings auch nur ca. 30 Min. gedauert). Das Importtool meckerte über irgendeinen Datentyp. Gut, eben ersetzen durch passenden.

Und dann gings erst richtig los. Alle Trigger rausschmeißen und die Generatoren gleich mit. Danach dann die ca. 100 SPs, glaube da war noch was mit foreign Keys. Koste es was es wolle : bei Fehlermeldung -> raus damit. Delete and forget. Die DB wurde dann von MySql akzeptiert ohne Fehler. Die ist heute noch im Internet zu besichtigen, aber sie ist wirklich sehr zu gebrauchen. Nämlich für nichts.

Würde freiwillig niemals eine FB-DB durch MySql ersetzen. Lokal schon gar nicht. Wie mkinzler sagt, die BDE ist als Flaschenhals bekannt. Glaube kaum, dass MySql da was verbessert, eher umgekehrt.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von DataCool
DataCool

Registriert seit: 10. Feb 2003
Ort: Lingen
909 Beiträge
 
Delphi 10.3 Rio
 
#7

Re: Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 15:27
Hi,

das Riesenproblem, was meine Geschihte so langsam macht, ist das ich bei meiner Firebird Version kein AutoInc habe.
Weiß nicht ab welcher Version das verfügbar ist.

Die Idee das ganze nah MySQL zu portieren kommt daher, das ich in ein paar Monaten mit der DB sowieso ins Web(MySQL) möchte/muss.

Greetz Datacool
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 15:32
FB unterstützt autoinc mit Hilfe von Generatoren(Sequenzen) und einem Trigger/SP
Markus Kinzler
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 15:38
Hallo,

tja, AutoInc laesst sich ersetzen durch einen Trigger+Generator
http://www.ibphoenix.com/main.nfs?a=...&page=ibp_skip

Ich denke übrigens nicht, dass die Bde eine 500 MB Datenbank langsam macht
(ich habe hier eine mit ~ 1GB).
Abfrage dauert 2 Sec (jaja, kommt auf die Abfrage an).

Wenn ein Programm mit steigender Grösse (mehr Records) langsamer wird,
macht meist der Programmierer was verkehrt.

Ein paar Dinge zum probieren:
- FB 1.5 oder FB 2-0
- sql-monitor benutzen
- kein TTable, nur TQuery
- kein select *
- prepared queries
- stored procedures für grössere Sachen
- manuelle Transaktionen
database.starttransaction / database.commit

Ich gebe allerdings zu, dass ne mysql3 meist schneller
im Lesen ist, das wäre mir aber bei den ganzen anderen Vorteilen egal.


Ich würde erst mal feststellen, warum die App so langsam ist,
sonst kann es dir passieren, dass du nach einer aufwendigen Portierung
feststellst, "Die DB war es nicht"


Heiko
Heiko
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Firebird DB nach MySql portieren

  Alt 15. Feb 2007, 15:40
Zitat:
Ich gebe allerdings zu, dass ne mysql3 meist schneller
im Lesen ist, das wäre mir aber bei den ganzen anderen Vorteilen egal.
Du meinst wohl Nachteilen.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz