Zugriff auf MariaDB 10 nicht möglich

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

felted1971

Benutzer
Registriert
30. Sep. 2023
Beiträge
10
Reaktionspunkte
0
Punkte
1
Hallo,

ich versuche auf die mySQL-db meiner DS218+ mittels PHP zuzugreifen.

Wenn ich es mit PDO und diesem php Code versuche:

PHP:
<?php

        $servername = 'http://192.168.178.47';

        $dbname = 'lektorat';

        $username = 'root';

        $passwort = '123';

        $serverdaten = 'mysql:host=$servername;dbname=$dbname;port=3307';

        try

        {

        $verbindung = new PDO($serverdaten, $username, $passwort);

        }

        catch(Exception $fehler)

        {

        print $fehler->getMessage();

        }

 ?>

Erhalte ich diese Meldung:

SQLSTATE[HY000] [2002] php_network_getaddresses: gethostbyname failed. errno=0

Mittels mysqli funktioniert es:

PHP:
<?php
function OpenCon()
{
$dbhost = "http://192.168.178.47";
$dbuser = "root";
$dbpass = "123";
$db = "lektorat";
$conn = new mysqli($dbhost, $dbuser, $dbpass,$dbname) or die("Connect failed: %s\n". $conn -> error);
return $conn;
}
function CloseCon($conn)
{
$conn -> close();
}
?>

Das einzige was ich dazu finden konnte, ist ein Hinweis, dass man eine sogenannte env-Datei bei Verwendung der PDO-Methode anpassen muss.

Ich finde auf meiner Diskstation jedoch keine Dateien der mySQL-Datenbank.

Kann mir da jemand weiterhelfen?

Grüße und Danke, Detlef
 
Zuletzt bearbeitet:
Leider gleicher Fehler.

Wenn ich die Serveradresse (http://192.168.178.47) duch xxx ersetze, bekomme ich genau die gleiche Fehlermeldung.

Ich gehe daher davon aus, dass PDO den Server nicht findet. MySqli findet den Server.

Muss man PDO irgendwie/irgendwo konfigurieren?

Grüße & Danke, Detlef
 
Habe das hier noch gefunden:
https://www.synology-forum.de/threads/kein-file-mysql-sock-vorhanden.61561/#post-493036

Gibt es folgende Parameter in den Config Files?

Rich (BBCode):

DiskStation> grep sock /etc/mysql/my.cnf
...
socket = /run/mysqld/mysqld.sock


und:

Rich (BBCode):

DiskStation> grep sock /etc/zarafa/server.cfg
...
# Override the default MySQL socket to access mysql locally
mysql_socket = /run/mysqld/mysqld.sock


Gruß Hoods

Wo zum Teufel sind die MySQL-Configfiles auf der Diskstation?

Grüße, Detlef
 
Ich habe jetzt testweise noch eine Abfrage auf PDO-Basis ausprobiert - funktioniert einwandfrei.
Hast du denn PDO im PHP-Profil aktiviert?
ZrpMmFJ.png
 
PhpMyAdmin sagt, dass MySqli installiert ist. Von PDO ist nix zu sehen.
Außerdem wird die PHP-Version 8.023 angezeigt.
Auf der Webstation wird jedoch ein Profil für PHP 7.0 angezeigt.

1696181864992.png

1696181595369.png
 

Additional post fields

 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat