mmofacts.com

Db auf Dev- und Produktivsystem synchron halten - wie?

gepostet vor 15 Jahre, 6 Monate von n26

Folgendes Szenario mit welchem bestimmt fast jeder hier ab und zu zu tun hat.

Jeder Entwickelt hat ja bestimmt auf seinem eigenen Rechner zum Entwickeln die Datenbank des/seines Spiels. Dazu haben vielleicht noch weitere Entwickler auch die Datenbank auf dem Rechner und letzendlich gibt es noch die Datenbank im laufenden Spiel.

Wie haltet ihr die Dinger Synchron?

Ich habe es bisher so gemacht dass ich Änderung in Form von einfachem Sql gespeichert habe und dann wenn es so weit war das ganze auf den anderen Datenbanken ausgeführt habe. Wichtig ist ja, dass man die Datenbank nicht reseten will.
Nunja aber das ist ja totaler Bullshit weil viel zu viel Arbeit und es doch oft Probleme gibt.

Deswegen wollte ich mich mal umhören, wie ihr das so löst.

(Nicht primär von Bedeutung: Ich nutze aktuelle MS Sql Server Express  ) 

n26

gepostet vor 15 Jahre, 6 Monate von Redrick

ist da kein master-slave-konzept vorgesehen? wäre sonst u.u eine möglichkeit

gepostet vor 15 Jahre, 6 Monate von knalli

Master-Slave funktioniert doch nicht bei Strukturänderungen.. und die echten Daten braucht man nur sehr selten/darf man gar nicht haben. (Es ging doch um die Dev-Maschine, nicht die Testmaschine).

Ich verweise auch mal auf RoRs Migrations (siehe Drakel), der OR-Wrapper Doctrine hat ebenfalls etwas ähnliches im Angebot (auf Basis von Yaml).

Alternativ natürlich dann kleine SQL-Scripte. Der Vorteil von Migrations ist, das ich (nahezu) beliebig hin- und herwechseln kann. Wie beim Sourcecode.

gepostet vor 15 Jahre, 6 Monate von DrakeL

Original von Redrick

ist da kein master-slave-konzept vorgesehen? wäre sonst u.u eine möglichkeit

Meinst bei Rails? Wie soll das funktionieren? Produktivsystem als Master? Und wie willst du Änderungen an der Datenbank vornehmen? Diese sollen ja erst im Entwicklungsbereich gemacht werden bis alles fertig ist und wohl nicht direkt im Produktivsystem. Wenn man immer Live am Produktivsystem arbeitet wäre das eine Möglichkeit.

Ansonsten braucht man ja mindestens zwei getrennte Systeme (Produktiv und Entwicklung). Alle Produktiv- bzw. alle Entwicklungsdatenbanken untereinander wäre schon eher möglich. Aber dann können die Entwickler an sich nicht unabhängig voneinander arbeiten.

gepostet vor 15 Jahre, 6 Monate von Redrick

Original von knalli

Master-Slave funktioniert doch nicht bei Strukturänderungen.. und die echten Daten braucht man nur sehr selten/darf man gar nicht haben. (Es ging doch um die Dev-Maschine, nicht die Testmaschine).

hatte ich irgendwie schon vermutet aber nicht weiter nachgeforscht, war nur nen gedanke, so natürlich unbrauchbar ;)

gepostet vor 15 Jahre, 6 Monate von DrakeL

Original von knalli

Alternativ natürlich dann kleine SQL-Scripte. Der Vorteil von Migrations ist, das ich (nahezu) beliebig hin- und herwechseln kann. Wie beim Sourcecode.

Wenn du für jede Änderung das SQL hinterlegst um die Änderung durchzuführen und um diese Rückgängig zu machen hast den gleichen Effekt. Großer Vorteil der Migrations finde ich aber dass man kein SQL nimmt sondern Rails sich um die Datnebank kümmert und die Skripte somit DB unabhängig sind.

Kenne ich bisher nur von Rails, in PHP hab ich sowas noch nicht gefunden für die DDL.

Edit: Gerade mal geschaut, Doctrine hat es recht schick gemacht mit YAML. Zend Framework bietet sowas leider nicht. Ich werde wohl mit nativem SQL und dem Migration Prinzip arbeiten.

gepostet vor 15 Jahre, 6 Monate von n26

Original von TheUndeadable

http://www.csharpfriends.com/Articles/getArticle.aspx?articleID=415

http://www.zdnet.de/datenbanken_fuer_entwickler_sync_for_sqlserver_download-39002345-153074-1.htm

Oder:

http://www.microsoft.com/downloads/details.aspx?FamilyID=7DE00386-893D-4142-A778-992B69D482AD&displaylang=en

Hm warum bin ich nicht selber drauf gekommen nach nicht Microsoft Lösungen für den SQL Server zu suchen

Die VSTS for Database Professionals ist ne feine Sache bloss leider leider nur für die VSTS verfügbar und die habe ich nicht :(

Die anderen Dinge werde ich mir mal anschauen, dankö

gepostet vor 15 Jahre, 6 Monate von knalli

Original von Klaus

Für dich wahrscheinlich irrellevant, aber der RoR-Abklatsch CakePHP hat ebenfalls ein Migrations-Projekt.

http://github.com/joelmoss/cakephp-db-migrations/tree/master

Ja, das habe ich letztens auch gefunden. Hört sich vielversprechend an, das fehlte Cake bisher ja. Schon praktische Erfahrungen gemacht?

gepostet vor 15 Jahre, 6 Monate von TheUndeadable

> Hm warum bin ich nicht selber drauf gekommen nach nicht Microsoft Lösungen für den SQL Server zu suchen

Weil du vergessen hast, dass hinter Windows die größte Freeware und OpenSource-Community weltweit steckt ;-)

Auf diese Diskussion antworten