AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?
Thema durchsuchen
Ansicht
Themen-Optionen

Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

Ein Thema von Harry Stahl · begonnen am 27. Jun 2020 · letzter Beitrag vom 1. Jul 2020
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#11

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 28. Jun 2020, 05:07
OK, danke, das hört sich ja gut an. Und Lizenzen für eine bestimmte Anzahl von User muss man hier ja auch nicht bezahlen, nehme ich an?
Da SQLite Open-Source ist, hast du da kein Problem

Aber einen DB-Server benötige ich doch, um einen gleichzeitigen Zugriff von mehreren Usern (das ist auch ein Anwendungsfall, habe ich evtl. nicht deutlich genug beschrieben) handlen zu können (also Datensatz sperren, Info an User, dass Datensatz derzeit von anderem User bearbeitet wird, usw), oder?

Und wenn auf die DB auf der NAS über einen WebClient Zugriff genommen wird, geht es ja auch nicht ohne, denke ich.

Und noch eine Nachfrage: Wie steht es mit der Sicherheit? Verschlüsselung, Passwortgeschützter Zugang, etc ist möglich?
Nein, einen extra Server brauchst du deshalb nicht. Da einige Webhoster sogar SQLite als Datenbank verwenden (i.d.R. statt MySQL), sollte man das ganze auch im Multiuser-Betrieb laufen lassen können. Einen Webserver (Apache) wird du wohl brauchen, wenn über einen Web-Client zugegriffen werden soll. Aber auch da kann dann SQLite als DB fungieren.

Was die grundlegende Sicherheit betrifft. SQLite bietet eine Verschlüsselungsfunktion für Daten. Zugangskontrolle liegt beim Programmierer.

Das einzige das ich jetzt nicht weiß ist, ob das ganze auf Apple-Geräten (IOS, MacOS) läuft.

Aber unter http://sqlite.org findest du das sicher mehr Infos
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Rainbow6

Registriert seit: 21. Mai 2019
20 Beiträge
 
#12

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 28. Jun 2020, 07:05
Das einzige das ich jetzt nicht weiß ist, ob das ganze auf Apple-Geräten (IOS, MacOS) läuft.

Aber unter http://sqlite.org findest du das sicher mehr Infos
Da kann ich beruhigen - SQLite ist auf iOS und macOS kein Problem.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#13

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 28. Jun 2020, 07:48
Wenn NAS, dann kommt es auch erstmal drauf an was für Eines, vor allem ARM oder Intel.
Genug RAM kann auch nicht schaden. (kann auch so nicht schaden ... verbraucht kaum mehr Strom und ist auch gut für den FileCache)

Ein SQLite ist vorinstalliert (kann auch sein, dass es ein MySQL war) und wird z.B. vom DSM verwendet,
und das lässt sich nach außen freigeben, wenn man unbedingt will.
Auch einige andere Packages verwenden eine Datenbank, so dass auch PostgresSQL bereits drauf sein könnte.

Aber Besser ist es wohl direkt eine eigene Installation zu verwenden.

MariaDB gibt es direkt in der hauseigenen Packetquelle, aber auch MySQL, SQLite und PostgreSQL gibt es schon als fertige Packete.
Ansonsten kannst'e als Docker-Packet auch jede andere Datenbank installieren, sowie (auf den größeren Intels) auch in einer VM alles was man will.
Aber von der Leistung wäre Docker oder direkt im HostOS installiert am Optimalsten.
(MySQL will niemand selbst installieren/hosten und als Alternative mit "benutzbarer" Lizenz ist sowieso MariaDB vorhanden)

https://www.synology.com/de-de/dsm/packages/MariaDB10
https://www.synology.com/de-de/knowl...ith_phpMyAdmin
https://sondregronas.com/managing-po...nology-server/
...

Ein phpMyAdmin ist auch verfügbar, das düfte nicht nur MariaDB verwalten können, sondern eigentlich auch SQLite und Postgres. (ich weiß aber nicht ob im hauseigenen Packet alles enthalten ist, damit auch was Anderes außer dem hauseigenen MariaDB ginge)
https://www.synology.com/de-de/dsm/packages/phpMyAdmin


Für eine GROße Datenbank ging es wohl eher in Richtung RackStation, aber ansonsten reichen auch die kleineren DiskStations.
MariaDB ist schon auf den kleinsten DS...j und DS...slim lauffäig.

Postgres braucht mindestens Intel mit Docker, was wohl mindestens ein DS...+ bräuchte.
Da könnte man daneben auch gleich sein eigenes GitLab und Redmine/MantisBT/Wiki installieren.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (28. Jun 2020 um 08:08 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von MyRealName
MyRealName

Registriert seit: 19. Okt 2003
Ort: Heilbronn
675 Beiträge
 
Delphi 10.4 Sydney
 
#14

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 28. Jun 2020, 09:19
Ich stehe gerade vor einem ähnlichem Problem.
SQLite hatte ich mal auf dem Handy probiert und Multiuser ging da garnicht, weil der erste verbundene Nutzer die Dateien lockt und der nächste, der sich verbinden will (oder schreiben, weiss nicht mehr, schon ein paar Jahre her), kriegt Fehlermeldung.

Da Du ja eh schon eine eigenen Serversoftware hast, könntest Du eine Rest-Schnittstelle einbauen (geht einfach mit TMS XData) und schon brauchst Du keine Multiuser-DB mehr.
Du kannst auch Firebird nehmen, das gibts für jedes Betriebssystem und kann man bestimmt auch auf einem NAS mit Linux laufen haben oder einem Raspberry. Das unterstützt auf jedem Fall multiple Nutzer und geht auch mit grossen Datenmengen gut um.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#15

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 28. Jun 2020, 20:24
SQLite hatte ich mal auf dem Handy probiert und Multiuser ging da garnicht,
Multiuser auf dem Handy?

Falls davon die Rede ist, auf eine entfernte SQLite DB zuzugreifen (Stichwort NAS), dann ist sicher nicht die beste Wahl. Es gibt Leute, die die NAS Datei dann lokal ziehen, bearbeiten und wieder zurückschieben. Könnte natürlich auch Konflikte geben. Halte ich auch nicht für besonders elegant. Je nach Anwendungsfall kann man vielleicht gut mit mehreren SQLite DB (Files) arbeiten, die man an die Kern DB Datei "attached". SQLite kann die ja gemeinsam per SQL ansprechen. Für kleine, lokale Änderungen (auf Handy bspw) könnte man also vielleicht relativ Einfach sozusagen Diff Dateien erzeugen (nur schwieriger bei Deletes)

SQLite auf Server
Damit könnte vielleicht ein Webserver gemeint sein. Hier würde ein Programm exklusiv (also Single User) die Anfragen verarbeiten, die für das Webfrontend benötigt werden. Geht, aber skaliert natürlich nicht besonders, also nur für kleinere Lösungen geeignet.

@"Postgres braucht Intel", gemeint ist vielleicht x86 Architektur, ist aber auch nicht ganz richtig, gemeint ist wahrscheinlich, läuft nicht auf Handy.

Es wurde ja schon REST als Datenschicht genannt, das ist wahrscheinlich eine gute und zukunftssichere Lösung für die genannten Einsatzbereiche. Naheliegend für die Handy & Co wäre SQLite (mit den genannten Schwachstellen), möglich wäre vielleicht auch einfach eine Hand voll JSON Dateien für die leichtgewichtigen Geräte. (Die können auch sehr schön in echte Server DB "integriert" werden, zumindest Postgres) oder mal flott übers NAS geschoben.
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von MyRealName
MyRealName

Registriert seit: 19. Okt 2003
Ort: Heilbronn
675 Beiträge
 
Delphi 10.4 Sydney
 
#16

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 28. Jun 2020, 20:33
SQLite hatte ich mal auf dem Handy probiert und Multiuser ging da garnicht,
Multiuser auf dem Handy?
Ja, wenn man zum Bsp. diverse Synchronisationsarbeiten in einem Thread auf dem Handy machen will, dann braucht man einen 2. Nutzer, da die DB-Connection bei UniDAC nicht Threadsafe ist
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#17

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 28. Jun 2020, 20:45
@"Postgres braucht Intel", gemeint ist vielleicht x86 Architektur, ist aber auch nicht ganz richtig, gemeint ist wahrscheinlich, läuft nicht auf Handy.
Das auch.

Synolgy hat quasi 3 CPUs. ARM, Intel und in weingen Modellen nochwas Spezielles für NAS, das ich aber aber ähnlich wie ARM ansehen würde.
Also ja, braucht x86 (eine Synology mit Intel) und Handy/Tables geht auch meistens nichts, obwohl es da auch Geräte mit Intels x86ern gibt, wobei auf Android installieren geht wohl dennoch nicht.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer
Online

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#18

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 28. Jun 2020, 21:33
Bei sqllite hatte ich (neben der Multiuser-Geschichte) auch eine erheblich langsamere Performance als mit MySQL, MSSQL oder Oracle (Meine Vergleiche).
Auch als Embedded DB war es sehr viel langsamer als H2.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.537 Beiträge
 
Delphi 11 Alexandria
 
#19

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 28. Jun 2020, 23:50
Hallo Harry,

einen Webserver, welcher von sich aus auch eine Datenbank darstellt, gibt es glaube ich nicht. Das würde den verschiedenen Wünschen der Administratoren wohl entgegen stehen.
Was du machen könntest, wäre mit Delphi eine Rest-Anwendung für den Apache schreiben. Dabei hättest du ja den Datenbankteil frei in deiner Hand und könntest eventuell dein bisheriges eigenes Format weiter verwenden. Dadurch wäre deine Datendatei über alle Einsatz-Szenarien konsistent.

Gruß
Thorsten
Hallo Thorsten,

danke für den Tipp. Auf Client-Seite würde das wohl gehen, aber auf der Synology würde ich die Server-Anwendung ja wohl nicht ausführen können, oder?
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.537 Beiträge
 
Delphi 11 Alexandria
 
#20

AW: Welche Datenbank u.a. im Cross-platform Umfeld und mit NAS verwenden?

  Alt 29. Jun 2020, 00:01
Vielen Dank auch für die anderen Antworten.

Der Prozessor hier ist ein Realtek RTD1296 SoC. Aber ein Programm das NAS wollte ich nicht schreiben, hatte eher gehofft, dass es fertige (Web-) Server gibt, denen man z.B. eine MySQL-Datei oder ähnliches unterschiebt und die verwalten dann die Datei und zwar von den Clients aus gesteuert (dann brauche ich eben nur Clients für windows, mac, Linux, android und ios zu schreiben).

Ich hatte das mal einfach naiv unterstellt, da ich selber schon mal mit Interaweb einen Webserver geschrieben habe, der eine Datenbank (eben meine) für Desktop- und mobile Geräte verwaltet, daher dachte ich, dass es halt fertige Lösungen (auch im Open-Source Bereich) gibt, die so Standard-Datenbank verwalten.

Schade, dass ich die Intraweb-Lösung nicht auf den NAS bringen kann (erzeugt leider ja nur Windows-WebServer).

Aber selbst für die hier angesprochene REST-Lösung (sehr faszinierend, wie ich finde) müsste ich ja wohl ein "Programm" auf dem NAS haben, das dem Server einen Service anbietet, wenn ich das richtig verstanden habe.

Geändert von Harry Stahl (29. Jun 2020 um 00:04 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    


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 14:32 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