Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
MS SQL für Linux gesucht (kein mariaDB oder MySQL)
Gibt es irgendwo eine Linux-Distri mit MS SQL als turnkey, d.h. fertig zum Einsatz. Dieses gefrikel bei der installation von MS SQL möchte ich mit nicht antun.
Muss eine MS-SQL-Datenbank nach mariaDB umsetzen. Leider macht M$ mal wieder sein eigenes Ding.
Eigentlich ist die Installation je nach Distribution sehr gut und simpel von MS beschrieben. Falls du das nicht machen möchtest würde ich auf ein Dockerimage setzen. https://hub.docker.com/r/microsoft/mssql-server
Eigentlich will ich nur eine MS-SQL-Datenbank in MS-SQL einlesen und als CSV ausgeben. Diese möchte ich dann in mariaDB einlesen.
M$ macht da so einiges anders. In der SQL-Datei stehen so Sachen wie GO. Damit wird eine Batchprozess aufgerufen. Das kann mariaDB (oder auch andere Datenbanken) nicht.
Nicht das man das brauchen würde. Ist halt M$. Standards sind für die nur unverbindliche Empfehlungen.
Werde mal das mit docker probieren. Scheint mir schneller zu gehen als den ganzen Murks per Hand zu installieren.
Ja, ist eine gute Option wenn Docker eh schon vorhanden ist. Ansonsten ist die Installation vom SQL Server 5 Bashbefehle. Falls du z.b. auf Ubuntu (oder einer der anderen unterstützten Distro's unterwegs bist.
Wa$ $oll man von jemanden, der M$ $o $chreibt, und den M$$QL $erver nicht korrekt auf$etzen kann, denn erwarten.
Man könnte natürlich auch einfach das GO-Kommando im jeweiligen Tool (z.B. $$M$) für die $QL-$kript-Generierung deaktivieren. Oder den Befehl via Replace er$setzen. Aber naja, M$ ist einfach voll der $schei$$ oder so.
Nee. Ich nutze fast ausschließlich Debian. Ausnahme MX-Linux (debian-Derivat). Alles unter Proxmox als VM.
Ubuntu macht mir zuviel eigenes, inkompatibles Zeug.
Werde mal Docker mit den Helper-Scripts aufsetzen und MS SQL installieren.
@andy_0: Das finde ich nicht nett.
Ich mache nix mit Microsoft, wenn ich es vermeiden kann. Klar kann man mit Batchbefehlen vieles vereinfachen, aber dann ist man wieder auf einer Insel.
Genau aus diesem Grund möchte ich die Datenbank auf mariaDB umsetzen. Die ganzen Feinheiten von Microsoft kenne ich nicht. Mag sein, das ich mir mit MS SQL viel Arbeit erspare.
Mir ist aber meine Freiheit wichtiger.
Bei mir muss eine Brot- und Butter-Software auf allen von mir verwendeten Systemen laufen. Deshalb ist z.B. MS Office auf den Desktop-PCs rausgeflogen und durch LibreOffice erstetzt worden. Für meinen Bedarf reicht das völlig. Mehr brauche ich nicht. Damit kann ich auf jedem System sofort arbeiten und muss mich nicht umgewöhnen.
Mein Beitrag ging nicht um Pro/Contra zu MSSQL. Es ging um deine Art, wie du dich über Themen auslässt, ohne die Hintergründe zu kennen.
Genauso wenig ist MSSQL schwieriger einzurichten als z.B. MariaDB. Es gibt ein Docker Container - einfacher kann man es Personen IMHO nicht machen.
In SSMS kann man wohl den GO-Befehl bei Ausgaben einstellen. Eine kurze Suche hat mir die Info gegeben: Options - Query Execution - Batch seperator.
Alternativ steht es dir frei ein alternatives Programm wie z.B. DBeaver zu nutzen um Daten von A nach B zu transferieren (über direkte Verbindungen oder über SQL Exports).
Ich habe nur die SQL-Datei. DBeaver will sich aber mit dem SQL-Server(den ich aber nicht habe) verbinden.
HeidiSQL dito.
Aus den GO ein #GO machen habe ich schon versucht. Das geht, aber dann kommen weitere Fehlermeldungen.
Der Beste Weg scheint mir die Datenbank in CSV zu exportieren und dann in mariaDB einzulesen.
Du kannst MSSQL aufsetzen, dein SQL Skript dort reinladen und dann mit der DB weiterarbeiten (anderes Skript erzeugen, andere DB to DB Migration definieren, ...).
Kostet natürlich alles Zeit. Die Systeme sind nicht 100% zueinander kompatibel. Außerdem weißt du offenbar gar nicht, ob es "nur" um Tabellen geht, ob diese Tabellen alle nur Standard Features nutzen, ob weitere, komplexere Funktionen wie z.B. Stored Procedures genutzt werden. Spätestens bei Stored Procedures ist die DB-Kompatibilität über DB-Systeme hinweg vorbei.
Was in der DB drin ist weiß hier keiner. Das System wurde vor Jahren von einem Mitarbeiter eingerichtet. Der ist aber schon länger nicht mehr dabei (Rente). Kontakt gibt es keinen mehr. Dokumentation hat man nie gebraucht. Wozu auch, der MA war doch immer da.
Jetzt sollen die Daten in ein kompatibles Format (CSV, Standard SQL) umgewandelt werden um diese später in ein neues System einspielen zu können.
Das ist normalerweise nicht meine Aufgabe. Konnte mich nicht schnell genug verdrücken. Jetzt habe ich den Mist auf meinem Schreibtisch.
Dein Vorhaben bedingt, dass du die gesamte Logik der Datenbank portierst und die Daten als .csv überträgst. Wobei selbst die Datenübertragung so ein Ding ist, das Encoding von Microsoftprodukten wechselte von code pages zu UTF-16 zu UTF-8 und gerade der MsSQL-Server war je nach Version mitunter ein Arschloch, dem konnte man UTF-8 bei der Generierung von Datenbanken vorgeben, es war aber mitunter dann kein UTF-8[1].
Gibt es irgendwo eine Linux-Distri mit MS SQL als turnkey, d.h. fertig zum Einsatz. Dieses gefrikel bei der installation von MS SQL möchte ich mit nicht antun.
Du wirst vermutlich keine Linux-Distro finden, auf der MSSQL vorinstalliert ist. Allein aus Lizenzgründen dürfte das schwierig sein. Zudem ist MSSQL auf Linux zu sehr ein Nischenthema. Das wäre ungefähr so, als wolltest du eine Distribution haben, bei der die PowerShell die Default-Shell ist. 🙂