Fehler "SQLSTATE[HY000] [1045]" bei Installation Nextcloud mit mysql/MariaDB

Status
Für weitere Antworten geschlossen.

491810

Benutzer
Mitglied seit
20. Jul 2013
Beiträge
549
Punkte für Reaktionen
3
Punkte
44
Fehler "SQLSTATE[HY000] [1045]" bei Installation Nextcloud mit mysql/MariaDB

Hallo,

beim Update meiner Nextcloud 16 auf meiner DS918+ hat sich meine Installation zerschossen.
Also durfte ich Nextcloud neu aufsetzen. Sollte ja alles (eigentlich) kein Problem darstellen.

Problemlos kann ichd ie SQLlite Variante installieren. Die MariaDB5 oder 10 klappt jedoch nicht.
Jedes mal wenn ich die Daten eingebe erhalte ich die folgende Fehlermeldung im Browser:

nextcloud "SQLSTATE[HY000] [1045] Access denied for user 'oc_admin'@'localhost' (using password: YES) "

Wenn ich per phpmyadmin rein schaue dann hat er den user und das Schemata angelegt.
Auch in der config.php hat er seine Einträge soweit angelegt. Dennoch klappt es immer nicht.

<?php
$CONFIG = array (
'instanceid' => 'oco618k4a6z2',
'passwordsalt' => 'Rqb7RoiKARf+s2dBuw1ArEqhDZSMle',
'secret' => '14kl60sgdqwgb9usg325lmfqwfrd0325',
'trusted_domains' =>
array (
0 => 'cloud.meine-domaene.eu',
),
'datadirectory' => '/volume1/web/nextcloud/data',
'dbtype' => 'mysql',
'version' => '18.0.0.10',
'overwrite.cli.url' => 'https://cloud.meine-domaene.eu',
'dbname' => 'nextcloud',
'dbhost' => '127.0.0.1:3307',
'dbport' => '',
'dbtableprefix' => 'oc_',
'mysql.utf8mb4' => true,
'dbuser' => 'oc_admin',
'dbpassword' => '14k14mkl145n15k6kl378n589',
);

p.s.: Ich habe bei Hostname auch schon die folgende Paramter probiert:

localhost (default)
localhost:3306 (MariaDB5)
localhost:3307 (MariaDB10)
127.0.0.1
127.0.0.1:3306 (MariaDB5)
127.0.0.1:3307 (MariaDB10)

Allesamt ohne Erfolg. Egal, was ich einstell. Ich bekomme es nicht installiert.
Wenn ich den user "oc_admin" via phpmyadmin anlege legt er "oc_admin1" an.

Wenn ich den Server per SQLlite installiere sieht die config.php wie folgt aus:

<?php
$CONFIG = array (
'instanceid' => 'oco618k4a6z2',
'passwordsalt' => 'Rqb7RoiKARf+s2dBuw1ArEqhDZSMle',
'secret' => '14kl60sgdqwgb9usg325lmfqwfrd0325',
'trusted_domains' =>
array (
0 => 'cloud.meine-domaene.eu',
),
'datadirectory' => '/volume1/web/nextcloud/data',
'dbtype' => 'sqlite3',
'version' => '18.0.0.10',
'overwrite.cli.url' => 'https://cloud.meine-domaene.eu',
'dbname' => 'nextcloud',
'dbhost' => '127.0.0.1',
'dbport' => '',
'dbtableprefix' => 'oc_',
'dbuser' => 'oc_admin',
'dbpassword' => '14k14mkl145n15k6kl378n589',
'installed' => true,
);

Ich habe schon super viel über den Fehler im Internet auf deutsch und Englisch
gelesen. Aber rausgefunden, warum ich es dieses mal nicht bekomme nicht.

Mein Datenbank Passwort für 'root' auf MariaDB5 und MariaDB10 ist wie folgt:

- 10 stellig
- Großschreibung
- Kleinschreibung
- Sonderzeichen (@, !, ?)

Ich habe das DB-Passwort auch schon ohne das '@' genommen. Ändert nichts.
Ich bin langsam mit meinem Latein am Ende. Woran kann das bitte denn liegen???
 

491810

Benutzer
Mitglied seit
20. Jul 2013
Beiträge
549
Punkte für Reaktionen
3
Punkte
44
Eine DB sollte nie im Kontext des Users "root" oder "admin" laufen.
Erstelle mittels PMA einen extra User. Im gleichen Dialog gleichnamige DB erstellen und dem User alle Rechte gewähren.
Screenshots sind hier auch immer hilfreich.

Natürlich habe ich mir einen User angelegt - in meinem Fall "nextcloud", der auch die entsprechenden Rechte bekam.
Ging aber genauso wenig wie mit dem Root. Ich habe 1/2 Dutzend Anläufe gebraucht ehe es per Zufall einmal ging.
Das war dann als ich einen Ordner /volume1/web/nextcloud14 (die v14) angelegt habe. Den habe ich dann gelöscht
ihn nochmal sauber angelegt (also als "/volume1/web/nextcloud") und von der v14, auf die v15, v16 bis v17 upgedatet.
Direkte Installation der v17 bzw. der neuen v18 wollte und will bei mir um's Verrecken einfach nicht gelingen auf der DS.
 

491810

Benutzer
Mitglied seit
20. Jul 2013
Beiträge
549
Punkte für Reaktionen
3
Punkte
44
Jetzt muss ich nur noch schauen, wie ich all diese Fehler rausgeklingelt bekommen ...

Sicherheits- & Einrichtungswarnungen

Für die Sicherheit und Performance Deiner Instanz ist es wichtig, dass alles richtig konfiguriert ist. Um Dir dabei zu helfen, führen wir einige automatische Prüfungen durch. Weitere Informationen kannst Du der verlinkten Dokumentation entnehmen.
Es gibt einige Warnungen bei Deiner Systemkonfiguration.

Die PHP-Speichergrenze liegt unterhalb des empfohlenen Wertes von 512MB.

Es wurde kein PHP-Memory-Cache konfiguriert. Zur Erhöhung der Leistungsfähigkeit kann ein Memory-Cache konfiguriert werden. Weitere Informationen findest Du in der Dokumentation.
In der Datenbank fehlen einige Indizes. Auf Grund der Tatsache, dass das Hinzufügen von Indizes in großen Tabellen einige Zeit in Anspruch nehmen kann, wurden diese nicht automatisch erzeugt. Durch das Ausführen von "occ db:add-missing-indices" können die fehlenden Indizes manuell hinzugefügt werden, während die Instanz weiter läuft. Nachdem die Indizes hinzugefügt wurden, sind Anfragen auf die Tabellen normalerweise schneller.
Fehlender Index "owner_index" in der Tabelle "oc_share".
Fehlender Index "initiator_index" in der Tabelle "oc_share".
Fehlender Index "twofactor_providers_uid" in der Tabelle "oc_twofactor_providers".
Fehlender Index "version" in der Tabelle "oc_whats_new".
Fehlender Index "cards_abid" in der Tabelle "oc_cards".
Fehlender Index "cards_prop_abid" in der Tabelle "oc_cards_properties".
Dieser Installation fehlen einige empfohlene PHP-Module. Für bessere Leistung und bessere Kompatibilität wird dringend empfohlen, diese zu installieren.
imagick
Bei einigen Spalten in der Datenbank fehlt eine Konvertierung in big int. Aufgrund der Tatsache, dass das Ändern von Spaltentypen bei großen Tabellen einige Zeit dauern kann, wurden sie nicht automatisch geändert. Durch Ausführen von "occ db:convert-filecache-bigint" können diese ausstehenden Änderungen manuell übernommen werden. Diese Operation muss ausgeführt werden, während die Instanz offline ist. Weitere Einzelheiten findest Du auf der zugehörigen Dokumentationsseite.
filecache.mtime
filecache.storage_mtime
mounts.storage_id
mounts.root_id
mounts.mount_id

Bitte überprüfe noch einmal die Installationsanleitungen ? und kontrolliere das Protokoll auf mögliche Fehler oder Warnungen.

Überprüfe die Sicherheit Deiner Nextcloud über unseren Sicherheitsscanner ?.
 

491810

Benutzer
Mitglied seit
20. Jul 2013
Beiträge
549
Punkte für Reaktionen
3
Punkte
44
Wollte eben den ersten Fehler der Inidizes mit dem Befehl "php occ db:add-missing-indices" beheben und bekomme folgende Meldung.

Das gleiche bekomme ich angezeigt wenn ich den zweiten Fehler mit dem Befehl "occ db:convert-filecache-bigint" bereinigen lassen will:

This version of Nextcloud requires at least PHP 7.1<br/>You are currently running 5.6.11. Please update your PHP version.r

Wenn ich "php -v" eingebe bekomme ich folgendes angezeigt:

PHP 5.6.11 (cli) (built: Mar 28 2019 03:51:43)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies

Meine Webstation läuft aber auf Apache 2.4 mit PHP 7.3. Ich weiß, die DS selbst läuft unter PHP 5.6.x.
Kann mir jemand mal kurz den Ablauf zusenden, wie ich das von 5.6.x auf 7.3 umstelle, damit occ klappt?
 

Andy+

Benutzer
Sehr erfahren
Mitglied seit
25. Jan 2016
Beiträge
5.021
Punkte für Reaktionen
320
Punkte
189
Wenn ich neue Installationen durchführe, ob nun ownCloud oder nextCloud, dann nehme ich für die Eingaben stattdessen ein Script. Das nennt sich "autoconfig.php" und wenn ich das ZIP in den Webordner abgelegt und extrahiert habe, lege ich im Unterordner config die autoconfig.php ab mit folgendem Inhalt, um in MariaDB 10 zu installieren:

<?php
$AUTOCONFIG = array(
"dbtype" => "mysql",
"dbname" => "nextcloud",
"dbuser" => "root", (Datenbank Rootuser)
"dbpass" => "xxxxxxxxxx", (Datenbank Rootuser-Passwort)

"dbhost" => "127.0.0.1:3307",
"dbtableprefix" => "nc_",
"adminlogin" => "admin", (Nextcloud Adminuser)
"adminpass" => "xxxxxxxxxx", (Nextcloud Adminuser-Passwort)

"directory" => "/volume1/web/nextcloud/data",
);

Entsprechend wären manuell die Eingaben in der Startmaske zu hinterlegen. Ich würde auch nochmal alles löschen, auch die Datenbank und den User usw. und nochmal starten.

Wenn Du in der Webstation alles eingestellt hast, lösche die Datenbank und alle User zu nextCloud und versuche mal den obigen Weg. Das ist dann automatisiert.

Dann musst Du uU. die Rechte im kompletten Installationsordner anpassen, denn sonst funktioniert das nicht. Was ich da mache, ist auch nicht ganz koscher, aber wie folgt:

WinSCP starten und nach /volume1/web/ navigieren.
Verzeichnis „owncloud“ oder „nextcloud“ markieren und mit rechter Maustaste auf Eigenschaften gehen.
Gruppe http setzen
Eigentümer http setzen
Oktal 0775 setzen
„x“ bei Gruppe, Eigentümer und……
OK

Mach ich das mit den Rechten nicht korrekt (in meinem Vorschlag sicher etwas sehr pauschal), läuft das bei mir auch nicht. Manchmal steht das komfortable WinSCP nicht zur Verfügung und die Vorgänge müssen mit PuTTY oder dergleichen erledigt werden. Die Eingaben für ownCloud / nextCloud wären dann wie folgt:

chown -R http:http /volume1/web/owncloud/
chmod 775 /volume1/web/owncloud/

chown -R http:http /volume1/web/nextcloud/
chmod 775 /volume1/web/nextcloud/
 
Status
Für weitere Antworten geschlossen.
 

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