ubuntuusers.de

MS SQL Server Anbindung PHP 7.4

Status: Gelöst | Ubuntu-Version: Ubuntu 18.04 (Bionic Beaver)
Antworten |

wolfi3300

Anmeldungsdatum:
5. Juni 2006

Beiträge: 66

Ich möchte gerne mit PHP 7.4 auf einen MS-SQL Server zugreifen. Es gelingt mir nicht den ODBC Treiber zu installieren, da ich immer die Meldung bekomme, dass er nicht gefunden wird.

Ich bin nach dieser Beschreibung hier vorgegangen, die sich auch mit einigen anderen deckt, die ich gefunden habe: https://garnet8.co.uk/docs/how-to-install-ms-sql-server-odbc-driven-on-ubuntu-18-04

Folgendes habe ich gemacht

curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
exit

Now we have to update our Ubuntu operating system. Type the following:
sudo apt-get update

We can now install the ODBC driver. To do this type:
sudo apt-get install -y msodbcsql17 

Wenn ich das install - Commando ausführe bekomme ich zurück: E: Paket msodbcsql17 kann nicht gefunden werden.

Was läuft hier falsch?

Bearbeitet von ChickenLipsRfun2eat:

Bitte verwende in Zukunft Codeblöcke, um die Übersicht im Forum zu verbessern!

Moderiert von ChickenLipsRfun2eat:

Thema in einen passenden Forenbereich verschoben. Bitte beachte die als wichtig markierten Themen („Welche Themen gehören hier her und welche nicht?“) in jedem Forenbereich. Danke.

von.wert

Anmeldungsdatum:
23. Dezember 2020

Beiträge: 11888

wolfi3300 schrieb:

Folgendes habe ich gemacht

Wenn Du komplett von erster Befehlszeile über weitere und die Ausgaben bis zum neuen leeren Prompt in einen Codeblock gecopypastet hättest, würde man sehen können, wo Du etwas falsch gemacht hast - denn es funktioniert. Wobei curl nicht in einer Default-Installation enthalten ist, demzufolge nachinstalliert werden muß. Zudem sind diese Zeilen als root bzw. nach "sudo -i" durchzuführen oder man baut sie um.

"-y" setzt man nicht.

Ich vermute, Du hast einfach nur nicht "apt update" durchgeführt.

wolfi3300

(Themenstarter)

Anmeldungsdatum:
5. Juni 2006

Beiträge: 66

Alles so gemacht wie beschrieben, er hat es auch bei /etc/apt/sources.lst hinzugefügt. Curl war installiert, sonst hätte ich ja da schon eine Fehlermeldung bekommen.

Und natürlich habe ich auch ein apt-get update gemacht.

Trotzdem, er sagt er findet es nicht!?

von.wert

Anmeldungsdatum:
23. Dezember 2020

Beiträge: 11888

Und wir sollen jetzt alle raten, was Du nun wirklich auf Deinem Rechner gemacht hast, was nicht, was vielleicht übersehen? Welche Ausgaben es gegeben hat?

Wenn ich sage, es funktioniert, heißt das, ich habe es hier in einer VM getestet.

wolfi3300

(Themenstarter)

Anmeldungsdatum:
5. Juni 2006

Beiträge: 66

von.wert schrieb:

Und wir sollen jetzt alle raten, was Du nun wirklich auf Deinem Rechner gemacht hast, was nicht, was vielleicht übersehen? Welche Ausgaben es gegeben hat?

Wenn ich sage, es funktioniert, heißt das, ich habe es hier in einer VM getestet.

Gut, also:

curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   983  100   983    0     0   3413      0 --:--:-- --:--:-- --:--:--  3401
OK
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    77  100    77    0     0    263      0 --:--:-- --:--:-- --:--:--   263
apt-get update
OK:1 http://at.archive.ubuntu.com/ubuntu bionic InRelease
Holen:2 http://at.archive.ubuntu.com/ubuntu bionic-updates InRelease [88,7 kB]
OK:3 http://ppa.launchpad.net/ondrej/apache2/ubuntu bionic InRelease
Holen:4 http://security.ubuntu.com/ubuntu bionic-security InRelease [88,7 kB]
Holen:5 http://at.archive.ubuntu.com/ubuntu bionic-backports InRelease [74,6 kB]
OK:6 http://ppa.launchpad.net/ondrej/php/ubuntu bionic InRelease
OK:7 https://packages.microsoft.com/ubuntu/18.04/prod bionic InRelease
Holen:8 https://esm.ubuntu.com/infra/ubuntu bionic-infra-security InRelease [7.458 B]
Holen:9 https://esm.ubuntu.com/infra/ubuntu bionic-infra-updates InRelease [7.457 B]
Holen:10 http://at.archive.ubuntu.com/ubuntu bionic-updates/main Sources [528 kB]
Holen:11 http://at.archive.ubuntu.com/ubuntu bionic-updates/main i386 Packages [1.482 kB]
Holen:12 http://at.archive.ubuntu.com/ubuntu bionic-updates/main Translation-en [484 kB]
Holen:13 http://at.archive.ubuntu.com/ubuntu bionic-updates/universe i386 Packages [1.611 kB]
Holen:14 http://at.archive.ubuntu.com/ubuntu bionic-updates/universe Translation-en [394 kB]
Es wurden 4.765 kB in 15 s geholt (313 kB/s).
Paketlisten werden gelesen... Fertig
apt-get install msodbcsql17
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
E: Paket msodbcsql17 kann nicht gefunden werden.

Akedia

Anmeldungsdatum:
3. Januar 2018

Beiträge: 92

Hm, also auf der Installationsanleitung von Microsoft https://docs.microsoft.com/de-de/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-ver16 steht unter Ubuntu was von odbc18:

sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18

Vielleicht damit mal probieren?

wolfi3300

(Themenstarter)

Anmeldungsdatum:
5. Juni 2006

Beiträge: 66

Akedia schrieb:

Hm, also auf der Installationsanleitung von Microsoft https://docs.microsoft.com/de-de/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-ver16 steht unter Ubuntu was von odbc18:

sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18

Vielleicht damit mal probieren?

Leider auch das selbe Ergebnis: E: Paket msodbcsql18 kann nicht gefunden werden.

von.wert

Anmeldungsdatum:
23. Dezember 2020

Beiträge: 11888

$ sudo -i
# curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   983  100   983    0     0   5093      0 --:--:-- --:--:-- --:--:--  5093
OK
# curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    77  100    77    0     0    455      0 --:--:-- --:--:-- --:--:--   455
# apt update
(...)
Get:4 https://packages.microsoft.com/ubuntu/18.04/prod bionic InRelease [4.003 B]                                                           
(...)
Get:10 https://packages.microsoft.com/ubuntu/18.04/prod bionic/main amd64 Packages [260 kB]
Fetched 867 kB in 1s (739 kB/s)   
Reading package lists... Done
Building dependency tree       
Reading state information... Done
All packages are up to date.
# apt search msodbcsql
Sorting... Done
Full Text Search... Done
msodbcsql17/bionic 17.9.1.1-1 amd64
  ODBC Driver for Microsoft(R) SQL Server(R)

msodbcsql18/bionic 18.0.1.1-1 amd64
  ODBC Driver for Microsoft(R) SQL Server(R)

# 

Problemlos. Wenn das bei Dir nicht funktioniert, wirst Du bei Deinem viel zu späten Distupgrade oder Deinen Testereien etwas verhunzt haben. Was, tja.

Man könnte msodbcsql17 oder msodbcsql18 auch manuell ziehen (angeblich willst Du dieses alte System ja nur noch einen Monat betreiben).

von.wert

Anmeldungsdatum:
23. Dezember 2020

Beiträge: 11888

Ach, ich sehe gerade was...x86_32? Tja, das kannst Du vergessen.

homer65

Avatar von homer65

Anmeldungsdatum:
8. November 2005

Beiträge: 574

Wohnort: bochum, germany

Bin da auch nicht so der Experte, aber Du kannst ja ins Repository gucken was da drin ist:
https://packages.microsoft.com/ubuntu/18.04/prod/pool/main/m/msodbcsql17/
Und wie von.wert schon schrieb, kann man das deb Packet ja manuell runterladen und installieren.
msodbcsq17 ist da übrigens ein Verzeichnis.
Edit:
Ups, hatte gar nicht gesehen, das es nur amd64 Pakete gibt.

von.wert

Anmeldungsdatum:
23. Dezember 2020

Beiträge: 11888

homer65 schrieb:

Ups, hatte gar nicht gesehen, das es nur amd64 Pakete gibt.

Andersherum, sprich MS kann man das nicht vorwerfen. Er hat x86_32 installiert, noch mal und immer noch - und das nach bereits schon erheblichem Aufwand, das Thema läuft ja schon geraume Zeit, wie man z.B. auch an...

wolfi3300 schrieb:

/boot/grub/i386-pc

...sehen kann.

Kann ich absolut nicht verstehen. Die CPU ist mit sehr hoher Wahrscheinlichkeit x86_64 (obwohl es natürlich technisch möglich wäre, sein RAID1 mit 2 240er SSDs auch mit bspw. einem Atom Z2760 als zeitlich letzter Intel-x86-CPU ohne Intel64 zu betreiben).

Also...wenn man zum Retten/Einbinden der Datenbank unbedingt msodbcsql17/18 braucht und aus welchen Gründen auch immer (seine PHP-Probleme) jetzt nicht höher als Bionic gehen kann, muß man eben Bionic x64 installieren. Neu installieren, versteht sich, ein irgendwie geartetes Upgrade von 32 bit ist bekanntlich nicht möglich.

wolfi3300

(Themenstarter)

Anmeldungsdatum:
5. Juni 2006

Beiträge: 66

von.wert schrieb:

Ach, ich sehe gerade was...x86_32? Tja, das kannst Du vergessen.

Oh weia, ja habs gerade gecheckt:

root@wwwmx:~# getconf LONG_BIT
32
root@wwwmx:~# uname -m
i686

Danke für den Hinweis! Da müssen wir bis zum Relaunch im Juli auf ein paar Dinge verzichten ...

Antworten |