Schlagwort-Archive: mysql

Oracles Bürde

Seit Oracle Sun übernommen hat, reißen die negativen Schlagzeilen nicht ab. Unmut herrscht in der Java Community, weil die Kommunikation mit dem neuen Rechteinhaber sehr zu wünschen übrig lassen soll. Die Apache Foundation steigt wegen der Lizenzpolitik für Java-Testkits gar aus dem Community Process aus.

Im MySQL-Lager lagen zu Beginn auch die Nerven blank.Was dort inzwischen Stand der Dinge ist weiß ich leider nicht.

Mit LibreOffice der für viele Anwender wichtige Fork der OfficeSuite OpenOffice, der nach der Übernahme die Entwickler davon liefen. Der alte Name geht nun auch sehr viel direkter in die kommerzielle Version ein. Das dürfte für den Anwender alles sehr verwirrend sein, wenn er nun gleich zwischen drei Varianten entscheiden muss, wenn er seine Software im Netz sucht.

Die Firmenphilosophie ist also definitiv ein ganzes Stück unterschiedlich zu der von Sun. Entweder fährt das Unternehmen einen deutlich restriktiveren Kurs und findet sich dabei nur zwangsweise den Communities ab, die es „versehendlich“ mit den Projekten eingekauft hat, oder es hat bei der Übernahme schlicht verpennt genügend Personal bereit zu stellen, die an die alten Verbindungen anknüpfen. Demotivation und Vernachlässigung wird schnell abgestraft.

Als intensiver Nutzer von Java, MySQL, OpenOffice und VirtualBox verlasse ich mich doch sehr auf ein einziges Unternehmen. Solange irgendwelche Namensrechte, Softwarepatente und Urheberrechte mit im Spiel sind, birgt eben auch OpenSource-Software so manche Risiken. Und wenn nur bestehende Abläufe durch solch eine Übernahme und damit einhergehenden Strategiewechsel durcheinander geraten. Bei allen Vorteilen von Agiler Softwareentwicklung – als Anwender ist auch Beständigkeit gefragt.

Ich werde in Zukunft vorsichtiger sein. Das Risiko mehr zu streuen ist bestimmt nicht verkehrt.

Eve – data export / toolkit

CCP bietet auf der Webseite einen ziemlich umfassenden Dump ihrer Datenbank an, der etliche Megabyte Informationen über Agenten, Gegenstände und die Sonnensysteme enthält. Ich hab mir in den Kopf gesetzt, diese Information brauchbar und hübsch für das Web aufzubreiten, wie es schon unzählige andere Fanseiten seit Jahren machen. CCP selbst liefert eine Liste, unter welchen Adressen ihre Datensammlung bereits verfügbar ist.

Meine ersten Versuche werde ich – mit den Einschränkungen meines Webspaces – in PHP auf einer MYSQL-Datenbank machen. Die Daten liegen auf der offiziellen Webseite aber in Form eines Backups für MSSQL-Server + zugehöriger Tabellen-Definition vor. Die erste Hürde ist also groß, wenn man sich damit beschäftigen möchte.

MYSQL bietet als einzige mir bekannte funktionierende freie Möglichkeit ein „Migration Toolkit“ an, das eine MSSQL Datenbank (online/ nicht als backup) in eine MYSQL-Datenbank übersetzen kann. Vor der Konvertierung steht also zunächst die Installation eines Microsoft SQL Servers 2008 (in der kostenlosen Express-Variante) an, um das Backup dort zunächst einzuspielen und ihn als Quelle für die Migration zu verwenden.

Auf meinem (in diesem Bereich) unbelasteten Windows Vista musste ich vor der Installation das .Net-Framework, einen aktuellen Windows-Installer und die PowerShell manuell nach installieren. Hat man dieses Abhängigkeitsfeuerwerk gemeistert, ist die Installation zwar langwierig aber genauso problemlos, wie das anschließende Einspielen der Sicherungsdatei.

Um den frisch aufgesetzten Server im Folgenden zur Mitarbeit bewegen zu können, muss man zunächst im Konfigurationsmanager den TCP/IP Zugriff erlauben. (SQL Server Netzwerkkonfiguration-> Protokolle -> TCP/IP aktivieren und in den Einstellungen den Port 1433 bei IPALL eintragen).

Da mir die Benutzerverwaltung von Windows nicht sonderlich liegt, habe ich im Managment Studio noch einen neuen Benutzer mit MSSQL-Authenifizierung erstellt, ihm die Rolle „public“/“sysadmin“ verpasst und die entsprechende Datenbank zugewiesen. Danach funktionierte auch die Anmeldung aus der Migrations Toolkit.

Die Migration direkt auf den Server schlug aber fehl, da der Namen der Zieldatenbank fest aus Datenbanknamen und Schemanamen generiert wird und mir zum Erstellen einer neuen Datenbank die Rechte fehlen. Eine Option dieses Verhalten zu ändern, habe ich auch nach langer Suche im Netz nicht finden können. Das bestes Suchergebnis war dieses, mit dem ich aber auch nicht weiter kam.

Als letzten Ausweg habe ich eine lokale XAMPP Installation eingerichtet, in der Hoffnung die Daten nach der Migration auf den richtigen Server kopieren zu können. Um beide Systeme zur Zusammenarbeit zu überreden, musste ich in der my.cnf im Abschnitt „[mysqld]“ noch die Zeile „character-set-server = utf8“ ergänzen.

Die Anwendung lief anschließend ohne Fehlermeldung durch, so dass ich endlich die 242,7 MiB Daten im mySQL Format vorliegen hatte!

Zu diesem Zeitpunkt hatte mich schon dafür entschieden, mein Glück nicht auf die Probe zu stellen und die Datenbank zunächst lokal zu verwenden, da ich doch inzwischen eh alles Nötige auf der Festplatte installiert hatte.

Der Vollständigkeit halber aber doch noch der Versuch, die Daten auf den Webserver zu kopieren:

Die Datenbank umbennen, damit der Namen der Vorgabe meines Providers entspricht. Phpmyadmin brach nach der Hälfte ab und hinterließ großes Chaos, so dass ich ein – in weiser Voraussicht – erstelltes Backup mit MYSQL-Administrator einspielen musste. Generell scheint mySQL nämlich das Umbenennen einer Datenbank nicht zu unterstützen und PHP verschluckt sich an der Menge der Daten.

Besser:

Das MySQL-Backup gleich in ein Schema mit dem richtigen Namen einspielen und das Alte löschen.

Die Prozedur lief sowohl lokal (~2m), als auch auf meinem Webserver (~35m bei DSL 16000) ohne Fehler durch. Ich hoffe nur, dass ich mit meinen zahlreichen Fehlversuchen die Mitbenutzer meines Shared-Servers nicht zu sehr gestört habe. 🙂

Los gehts!