Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5

Owncloud: MySQL statt SQLite empfehlenswert?
#1

Hintergrundmotiv:
Ich möchte mehr von meinen Daten wieder selbst "kontrollieren" und weg von Anbietern wie Google oder Apple.

Der Default beim Installieren mit den Owncloud Webinstaller ist die Datenbank SQLite.

Ich bin mit Datenbanken bisher unerfahren.

Da jedoch klar ist, dass Owncloud noch sehr jung und somit unreif ist, sind vielleicht später mal "Hacks", also manuelle Eingriffe in die Datenbank nötig um bestimmte Anpassungen vornehmen zu können. *

Ist es vor so einem Hintergrund sinnvoll gleich von Anfang an eine MySQL-Datenbank zu verwenden?

Danke.

Ich freue mich auch über Linkempfehlungen rund um Owncloud.


* Das Wichtigste ist mir zur Zeit eine Sortierung nach Nachname in den Kontakten und ein Weg über ein anderes Importformat als Vcard die Information "Gruppe" in Owncloud hineinzutragen.
Vcard enthält kein Feld für Gruppe, daher geht diese Information beim Import verloren.

iP 12 Pro Max (mit dem jeweils aktuellsten iOS)
Zitieren
#2

Den Einsatz von mysql würde ich definitiv bevorzugen. sqlite wurde ursprünglich dazu gedacht dieses als integrierte Lösung für den embedded Bereich einzusetzen. Sprich als Datenbankanwendung für lokal installierbare Software zu dienen. sqlite unterstützt nicht den vollen Umfang des SQL Standards. Ebenfalls fehlt die Möglichkeit, Benutzerrechte anzulegen und zu vergeben.
Daher würde ich sqlite in Verbindung mit owncloud auch nur als Testdatenbank sehen.

Wie es unter IOS6 aussieht weiß ich im Moment nicht, aber zumindest in der aktuellen IOS7 Beta lässt sich in den Einstellungen die Sortierung nach Nachnamen, sowie die Anzeige der Kontakte nach dem Schema "Nachname, Vorname" problemlos einstellen.
Zitieren
#3

@wattie
Danke für die Empfehlung.

Der Webinstaller verlangt bei der Auswahl des Datenbanktyps bei "MySQL" Benutzernamen, Passwort und Datenbanknamen für die Datenbank.
Er legt diese jedoch nicht selber an. Wenn man einfach was einträgt, erhält man eine Fehlermeldung.

Vermutlich muss man also MySQL zuvor selber installieren, richtig?

Falls Du dazu Tipps hast: gerne.

Zu "Sortieren nach Nachname":
Da hast Du mich missverstanden. Ich weiß, dass dies in iOS6 geht.
Mir ging es um das Webinterface von Owncloud. Dort geht es erstaunlicherweise nicht.
Siehe auch:
https://github.com/owncloud/contacts/issues/63

Ich hatte gehofft, man könne eventuell händisch in den Konfigurationsdateien eine geeignete Anweisung zum Sortieren eintragen.
Also Notbehelf, bis Owncloud dies im Webinterface via GUI anbietet.

iP 12 Pro Max (mit dem jeweils aktuellsten iOS)
Zitieren
#4

Ja das ist richtig, damit owncloud selbst eine Datenbank anlegen könnte müsste dem Script ein Benutzer mitgegeben werden die die Berechtigungen hat, Datenbanken und Benutzer(rechte) anzulegen.

Hast Du Zugriff auf mysql? Im Idealfall mit phpMyAdmin. Dort solltest Du Dich mit einem Benutzer anmelden der die entsprechenden Berechtigungen besitzt. Hier solltest Du dann eine neue Datenbank anlegen und einen Benutzer, der ausschliesslich auf diese Datenbank schreibenden und lesenden Zugriff hat. Diese neu angelegte Datenbank und Benutzer kannst Du dann bei der ownCloud Installation angeben.

Bei einigen Webspace Anbietern bekommt man oftmals keinen Benutzerkennung für mysql mit der man direkt selbst Datenbanken und Benutzer anlegen kann. Hier kann man idR über die Konfigurationsoberfläche die vom Provider zur Verfügung gestellt wird (z.B. Confixx oder Plex) Datenbanken + Benutzerkennungen anlegen.

Das es Dir um die Weboberfläche bei den Kontakten geht war aus Deiner Frage für mich nicht so ersichtlich. Aber anhand Deines Links sieht man ja das der entsprechende Code für die Sortierung bereits für den ownCloud 6 Branch eingepflegt wurde. Du kannst übrigens auch den aktuellen Entwicklungsstand einsetzen, dann hättest Du die Sortierung schon drin. In dem Fall kann Dir aber niemand garantieren das es nicht zu anderen Fehlern kommen könnte.
Zitieren
#5

@wattie
Eine Datenbank habe ich nun über das Webinterface meines Webspaceproviders angelegt.
Berechtigungen konnte ich dort jedoch nicht wählen.

In diesem Webinterface des Providers steht neben der Datenbank auch ein Link "PHPMyAdmin".
Wenn ich diesem folge, öffnet sich erwartungsgemäß eine PHP-MyAdmin Oberfläche. Aber auch dort können keine Berechtigungen geändert werden. Auch das Anlegen einer neuen Datenbank innerhalb von PHPMyAdmin wird nicht angeboten.
Zumindest entdecke ich nichts dergleichen.

Hhmm.

Was Anderes:
Funktioniert bei Dir die Aktivierung von HTTPS in den Einstellungen von Owncloud?
Bei mir ist diese Option ausgegraut und inaktiv.

iP 12 Pro Max (mit dem jeweils aktuellsten iOS)
Zitieren
#6

Schau mal nach welche Software als Weboberfläche Dein Provider einsetzt, dann kann ich Dir das besser beantworten.

Mit phpMyAdmin loggst Du Dich mit einem Benutzer ein, den DU entweder selbst angelegt hast oder Dir initial von Deinem Provider angelegt wurde. Sieh mal in Deinen Mails nach, der Provider hat Dir bestimmt mal ne Mail mit den ganzen Zugängen geschickt.

Wenn HTTPS nicht ausgewählt werden kann liegt das normalerweise daran, das auf dem Server kein https angelegt wurde. Auch hier musst Du mal schauen ob das in Deinem Paket überhaupt dabei ist.
Zitieren
#7

@wattie
Den Namen der Weboberfläche, die mein Provider all-inkl.com verwendet, konnte ich bisher nicht ermitteln.

Zu PHPmyAdmin:

Ich kann PHPMYAdmin wie erwähnt problemlos aufrufen indem ich es von dem Webkonfigurator des Providers aus, wo ich zuvor eine Datenbank initial angelegt habe, auswähle.

Ich habe jetzt Owncloud einfach nochmal installiert und Benutzername, Datenbankname und Passwort eingegeben, so wie es im Webkonfigurator des Providers steht.
Die Installation lief glatt durch.

Denkst Du, ich muss mich dennoch um Berechtigungen kümmern?
Oder anders: wie kann man das checken.

Zu HTTPS:
Guter Hinweis von Dir, Danke! Mein Provider bietet das bei meinem Paket nicht an. Ich wußte bisher nicht, dass das ein extra Feature ist.

Am Rande:
Ich konnte das Problem mit dem Import von Gruppen sehr einfach lösen.

Die App Contacts Excel bietet seit einiger Zeit das Exportformat VCF.
Damit klappte der Import aller Adressen nach Owncloud vollständig. Yippee!

iP 12 Pro Max (mit dem jeweils aktuellsten iOS)
Zitieren
#8

Für den Standardbenutzer wird vom Provider normalerweise auch gleich eine Datenbank mit angelegt. Du hast jetzt für ownCloud diese "Standarddatenbank" angegeben, ist alles ok soweit.

Um weitere Berechtigungen brauchst Du Dich eigentlich nicht mehr kümmern.
Zitieren
#9

@wattie
Alles klar, Danke für die Einschätzung.

Jetzt fehlt für die Benutzbarkeit von Owncloud für die Kontakte nur
noch ein Hack in der Datenbank/im Webinterface, der die Sortierung auf
Nachname ändert.

Falls da jemand eine Idee hat ....

iP 12 Pro Max (mit dem jeweils aktuellsten iOS)
Zitieren
#10

Ich habe mich mal ein wenig mit den Kontakten befasst. Als Workaround könntest momentan folgendes machen:

Öffne mal einen Kontakt in der Weboberfläche. Du siehst dann oben rechts den Namen des Kotaktes nach dem Schema [Vorname] [Nachname]. Wenn Du auf den Stift dort klickst siehst Du auch nochmal die einzelnen Felder für Vorname und Nachname. Das Feld oben ist der sogenannte "Anzeigename". Wenn Du hier [Nachname] [Vorname] einträgst wird in der Weboberfläche der Name auch so angezeigt und entsprechend sortiert. die zusätzlichen Felder Name und Nachname bleiben dabei aber so wie zuvor erhalten.
Zitieren
#11

@wattie
Danke für die Idee.
Aber dann müsste ich manuell für die große Anzahl meiner Kontakte diese Änderung durchführen. Und bei jedem neuen Kontakt ebenfalls. Und wenn ich Kontakte über das iPhone hinzufüge, wäre die Eingabe eines Anzeigenamens nicht möglich.

Das ist mir zu umständlich.

Ich dachte man kommt vielleicht über Konfigdateien/PHP-Skripte irgendwie an die Daten ran, die an das Webinterface von der Datenbank "geliefert" werden.

iP 12 Pro Max (mit dem jeweils aktuellsten iOS)
Zitieren
#12

Im HTML-Quelltext steht für den "Anzeigenamen":

<input class="fullname value propertycontainer" type="text" required="" value="Adam Schmalhofer" name="value" data-element="fn">

Möglicherweise wäre es ein Ansatz die Anzeige mit Hilfe eines Usercripts (Stichwort Scriptish als Firefoxerweiterung) zu verändern?
Aber ich spekuliere nur.
Habe weder Programmier- noch Datenbankkenntnisse.

HTML und CSS beherrsche ich gut. Aber Userstyles alleine nützen nix.

iP 12 Pro Max (mit dem jeweils aktuellsten iOS)
Zitieren
#13

es wird sicher irgendwo ein php script geben, dass einen "select name, ... from table order by " hat.
Das müsstest du anpassen, dann könntest du so sortieren wie du willst
Zitieren
#14

@wattie

Leider ist ja ohne eine sehr kostspielige Gebühr beim Provider für ein SSL-Zertifikat (bei meinem 100 €/a) keine Verschlüsselung möglich.

Sind Dir andere Lösungen bekannt, wo man seine Daten selbst verwalten und verschlüsselten Transport gewährleisten kann?

iP 12 Pro Max (mit dem jeweils aktuellsten iOS)
Zitieren
#15

Keine Ahnung warum hier MySQL empfohlen wird. Das ist bei OwnCloud nur dafür gedacht, wenn man mehrere hundert User hat, bei einem User nutzt man SQlite. Es gibt ja auch OwnCloud Provider, wo man sich einfach nur noch anmelden muss. Von der Performance gibt es keinen Unterschied bei einem oder fünf User und darum geht es, da beides funktioniert. Das wird z.B auch bei Apps usw. genutzt, die nicht soviel speichern müssen. Wird ja auch auf deren Seite so empfohlen. Zumal MySQL wieder ganzer Brocken ist, der im Hintergrund läuft, für das was er dann machen soll. Von der zusätzlichen Gefahr mal abgesehen. Je mehr Software läuft, desto mehr Lücken gibt es.

Normal bieten Hoster auch SSL Proxy an, ist dann kein eigenes Zertifikat, sondern gehst dann über deren Zertifikat, frag mal nach, ob die das unterstützen.

http://klein-gedruckt.de/2013/06/ownclou...ssl-proxy/
Zitieren
#16

Das kannst Du ja gerne alles machen, aber ich möchte keine Datenbankdatei im Netz liegen haben die es ungemein einfacher macht an die Daten zu gelangen da keine Benutzer-/Rechteverwaltung auf Datenbankebene vorhanden ist.
Zitieren
#17

Wo ist das einfach? Auf die Datei hat man keinen direkten Zugriff. Selbst wenn man den exakten Pfad kennt. Das ist wie ein MySQL Server, der nur per localhost angesprochen werden kann. Da muss ein Fehler im Skript sein, um an die Daten zu kommen, aber da würdest du auch an die Daten in der MySQL Datenbank kommen, wenn OwnCloud ein Fehler hat, der SQL Injektion zulässt. Da du dann ehe schon die entsprechenden Rechte hast.

MySQL lohnt sich nur für große Sachen. Da der Raspberry an sich schon sehr beschränkt ist, lohnt sich eigentlich nie eine MySQL Datenbank, da eher die Grenze des Pi erreicht wird, bevor MySQL von der Performance Sinn macht. Viele Skripte unterstützen nur MySQL, da es natürlich viel arbeit ist, beides am Laufen zu halten. Und Skripte ja auch vielleicht für 1000 oder mehr Benutzer geeignet sein sollten. Deswegen hat man bei Owncloud die Wahl. SQLlite ist viel einfacher einzurichten, aber bei >100 Benutzer nicht so performant. MySQL ist da performanter, aber auf dem Pi wird man keine 100 Benutzer drauf legen. Sicher ist beides!

Der Nachteil an MySQL ist nur, dass es wartungsintensiver ist, da wieder einiges an Software mitkommt.
Zitieren
#18

Du hast aber schon mitbekommen das wir hier von einem Webserver bei einem Provider und nicht von einem Pi?

Und was Du da vergleichst ist sorry, aber kompletter Blödsinn. Wenn ich an die sqlite DB komme dann komme ich auch an die Daten. Das ich mit sqlinjection an Daten komme ist klar, dazu muss es aber erst einmal eine Schwachstelle geben. Bei sqlite brauche ich die noch nichtmal, da reicht es aus wenn ich die sqlite DB gefunden habe.

Aber wie gesagt, Du kannst ja gerne einsetzen was Du möchtest, aber dann bitte nicht andere Empfehlungen mit Begründungen abtun die so nicht richtig sind.
Zitieren
#19

Du kommst nicht an die Datei ran. Dann erklär doch mal, wie du die Datei abgreifst, ist doch völliger Nonsense, den du von dir gibst. Und die 100 User wird er auch auf seinem Webspace nicht zusammenbekommen. In dem Fall ist es halt egal, was er nutzt, da MySQL ehe läuft, aber zu sagen, dass SQLite unsicher ist, ist völliger Unsinn.

Zitat:Empfehlungen mit Begründungen abtun die so nicht richtig sind
Nimm dir das mal wirklich zu Herzen.

Ansonsten ja, hier geht es nicht um den Pi, gab einen anderen Thread mit Pi und Owncloud.
Zitieren
#20

Du solltest Dir nicht meine Aussagen so zurecht biegen wie es Dir gerade in Deine Argumentation passt. Ich habe gesagt das sqlite potenziell unsicherer ist da keine eigene Rechte-/Benutzerstruktur. Jetzt kommst Du und willst mir erzählen das deswegen sqlite nicht unsicherer ist.

Natürlich komme ich nicht mal eben so an die Datei ran, wo habe ich das behauptet? Wenn ich aber an die Datei gelange komme ich auch an die Daten, das kannst Du ja mal mit dem Datenbankdateien von mysql versuchen.

Es kann sich ja nun jeder selbst anhand der vorgebrachten Argumente selbst aussuchen was er einsetzen möchte. Für mich ist das gar keine Frage und lasse mir da von Dir auch nicht erzählen welche Empfehlung ich abgebe Zwinkern
Zitieren


Möglicherweise verwandte Themen…
Thema / Verfasser Antworten Ansichten Letzter Beitrag



Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste