[MYSQL] PHPMyAdmin auf Synology Diskstation

Amroc

Stammgast
Ich bin langsam aber sicher am verzweifeln :(

Bin gerade daran mir auf meiner Diskstation PHPMyAdmin zu installieren. Habs mir runtergeladen und in einen Ordner im "Web" Verzeichnis gespeichert.
Rufe dann über Firefox phpMyAdmin auf, funktioniert problemlos. Dann setze ich für den root ein Passwort nach folgender Anleitung:
http://www.phpforum.de/archiv_42547_PHPmyAdmin@rootpasswort@setzem_anzeigen.html

Allerdings haperts bei mir beim Punkt "MySql neu starten" irgendwie check ich nicht wie das funktioniert.
Irgendwann kommt dann nur noch:
" #1045 - Access denied for user 'root'@'localhost' (using password: NO)"

Dann such ich die "config.inc.php" allerdings hab ich nur eine "config.sample.inc.php"... Ist das dasselbe? Wenn ich den Namen in "config.inc.php" ändere und dann phpMyAdmin aufrufen will kommt die Meldung:Wrong permissions on configuration file, should not be world writable!"
Aber überall im Internet les ich nur was von "config.inc.php"!

Die Daten hab ich wie in der obengenannten Anleitung ins config-file eingetragen, doch das bewirkt gar nichts :(

Hat jemand eine Ahnung was ich noch versuchen könnte?
"
 

FloHoCH

Stammgast
Wenn man es einmal geschafft hat langt man sich an den Kopf und denkt sich, "ist doch eigentlich ganz einfach" :) Ich musste kürzlich auch wieder probieren (auch für ein Synology NAS) und habs noch einigermassen im Kopf.

Also
Schritt1: PHPMyAdmin downloaden
Schritt2: Falls Zip-Archiv -> Entpacken
Schritt3: Ordner umbenennen, damit es einfacher ist
Schritt4: Passwort setzen
Schritt5: config.sample.inc.php downloaden und in editor öffnen
Schritt6: Blowfish Code schreiben (Irgendwelche Buchstaben)
Code:
$cfg['blowfish_secret'] = 'KL3iuklsdfjlkh3rHJKFDf'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Schritt7: File unter dem Namen "config.inc.php" speichern
Schritt8: Upload ins PHPMyAdmin-Verzeichnis
Schritt9: PHPMyAdmin aufrufen und einloggen

Der Rest vom Config-File sieht bei mir so aus:
Code:
/*
 * Servers configuration
 */
$i = 0;

/*
 * First server
 */
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
/* Select mysqli if your server has it */
$cfg['Servers'][$i]['extension'] = 'mysql';
/* User for advanced features */
// $cfg['Servers'][$i]['controluser'] = 'pma';
// $cfg['Servers'][$i]['controlpass'] = 'pmapass';
/* Advanced phpMyAdmin features */
// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
// $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
// $cfg['Servers'][$i]['relation'] = 'pma_relation';
// $cfg['Servers'][$i]['table_info'] = 'pma_table_info';
// $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
// $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
// $cfg['Servers'][$i]['column_info'] = 'pma_column_info';
// $cfg['Servers'][$i]['history'] = 'pma_history';
// $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';

/*
 * End of servers configuration
 */

/*
 * Directories for saving/loading files from server
 */
//$cfg['UploadDir'] = '';
//$cfg['SaveDir'] = '';

?>

Es gibt auch irgend ne Installations-URL, welche man aufrufen kann, die sollte dann das Config-File mit den Eingabewerten schreiben, aber da muss man eben irgendwie spezielle Berechtigungen vergeben - das hab ich nicht ganz geschnallt. Wahrscheinlich muss man einen Ordner "Config" anlegen, diesen auf 777 setzen (CHMOD), dann wird dort rein ein File generiert, welches anschliessend ins root-Directory kopiert werden muss - korrigiert mich, wenn ich hier völligen Stuss erzähle ;) Ich bevorzuge die manuelle Variante.

Irgendwo hätte ich noch eine genaue Dokumentation mit weiterführenden Möglichkeiten und detailierten Informationen - ich sollte die mal noch in mein Wiki übertragen, bevor sie verlohren geht. Aber in deinem Fall muss es ja einfach laufen, ohne Schnicschnac ...

PS: Ich hoffe du weisst dein root-Passwort noch!
 

Amroc

Stammgast
Wenn ich die config datei unter "config.inc.php" abspeichere kommt wieder die Meldung von wegen "should not be world writable"...
Ich mach das schon richtig mit Passwort sezten:
1. Tabelle mysql öffnen
2. users auswählen
3. localhost - root editieren
4. Password --> Funktion: Password --> "mein pw eingeben" -->ok
danach den blowfish-code reinschreiben und neu abspeichern...
oder ist das falsch?

Und weisst du, wie man auf der diskstation den Ordner mit chmod auf 777 setzen kann? Weil das hat mir auch mal jemand gesagt und gemeint ich brauche ein Konsole dafür.
 

Stromer92

Stammgast
Wenn ich die config datei unter "config.inc.php" abspeichere kommt wieder die Meldung von wegen "should not be world writable"...
Ich mach das schon richtig mit Passwort sezten:
1. Tabelle mysql öffnen
2. users auswählen
3. localhost - root editieren
4. Password --> Funktion: Password --> "mein pw eingeben" -->ok
danach den blowfish-code reinschreiben und neu abspeichern...
oder ist das falsch?

Und weisst du, wie man auf der diskstation den Ordner mit chmod auf 777 setzen kann? Weil das hat mir auch mal jemand gesagt und gemeint ich brauche ein Konsole dafür.


kannst du per FTP auf die Station zugreifen? Da könntest du die rechte ganz einfach setzen...
 

FloHoCH

Stammgast
Wie Stromer92 schon gesagt hat, das kannst du mit dem meisten FTP-Clients machen. Dazu musst du bei der Disk-Station FTP aktivieren. Du kannst dann den Admin-User gebrauchen.

Suche im FTP-Client nach "Attributen", "Eigenschaften" oder "CHMOD". Oft kannst du anstelle von 777 (Zahlenfeld) auch Checkboxen aktivieren (Lesen/Schreiben/Ausführen), für 777 einfach die vollen Rechte geben.

Natürlich kann man das auch in der Konsole, aber diese ist selten zwingend notwendig, meistens geht es ohne ;)
 

Amroc

Stammgast
Hab das jetzt mal versucht, Resultat ist immer noch beinahe dasselbe :(
Die Ordner sind übrigens alle auf 777 eingestellt, habs mit nem ftp-client getestet.
Ich hab einen Ordner "config" im phpmyadmin-verzeichnis erstellt, dort drinnen hats mir dann ein config-file erzeugt, das ich anschliessend ins hauptverzeichnis kopieren musste und den ordner "config" anschliessend wieder löschen.
Wenn ich jetzt im Browser auf phpmyadmin zugreifen will kommt wieder:
"should not be world writable"
Hab mir das Config-file dann mal angeschaut, und das sah folgendermassen aus:

Code:
<?php
/*
 * Generated configuration file
 * Generated by: phpMyAdmin 2.11.4 setup script by Michal ÄŒihaÅ™ <michal@cihar.com>
 * Version: $Id: setup.php 10748 2007-10-10 07:30:59Z cybot_tm $
 * Date: Fri, 25 Jan 2008 15:39:36 GMT
 */

?>
Also nur Kommentar...
Habt ihr ne Idee, was ich falsch gemacht habe?
 
A

abu

Guest
Offen wie ein Scheunentor

PHP reklamiert zu recht. Das mit dem 777 war eben eine nicht so gute Idee. Damit kann jeder an der Konfiguration rumfummeln oder gar alles löschen.

Bei mir: Verzeichnis phpMyAdmin: 755
Files phpMyAdmin : 644
 

Amroc

Stammgast
Ja, hab ich vorher grad selber rausgefunden ;)
Jetzt funktioniert was mitm Passwort noch nicht obwohl ich mir sicher bin, dass es richtig ist, naja das bring ich schon noch irgendwie hin.

Hier mal mein Config-File. Ich sollte mich dann doch mit dem angegebenen User und PW einloggen können, oder etwa nicht?

Code:
<?php

/* $Id: config.sample.inc.php 9675 2006-11-03 09:06:06Z nijel $ */
// vim: expandtab sw=4 ts=4 sts=4:

/**
 * phpMyAdmin sample configuration, you can use it as base for 
 * manual configuration. For easier setup you can use scripts/setup.php
 *
 * All directives are explained in Documentation.html and on phpMyAdmin 
 * wiki <http://wiki.cihar.com>.
 */

/* 
 * This is needed for cookie based authentication to encrypt password in 
 * cookie
 */
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

/* 
 * Servers configuration
 */
$i = 0;

/* 
 * First server
 */
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'password';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
/* Select mysqli if your server has it */
$cfg['Servers'][$i]['extension'] = 'mysql';
/* User for advanced features */
//$cfg['Servers'][$i]['controluser'] = 'root';
//$cfg['Servers'][$i]['controlpass'] = 'password';
/* Advanced phpMyAdmin features */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
$cfg['Servers'][$i]['relation'] = 'pma_relation';
$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
$cfg['Servers'][$i]['history'] = 'pma_history';

/* 
 * End of servers configuration
 */

/*
 * Directories for saving/loading files from server
 */
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';

?>
 
Zuletzt bearbeitet:

Amroc

Stammgast
Ich versteh die welt nicht mehr:
Wenn ich mit obiger Konfiguration auf meinem Server phpmyadmin starte erscheint die authentifizierung. so weit so gut.
Ich gebe root und password ein. es funktioniert nicht.
nur so zum testen geb ich mal root und lasse das passwort-feld leer. und siehe da es funktioniert...
das ist allerdings nicht das ziel der sache... Was ist da los?!
 

FloHoCH

Stammgast
nur so zum testen geb ich mal root und lasse das passwort-feld leer. und siehe da es funktioniert...
das ist allerdings nicht das ziel der sache... Was ist da los?!

OK, dann scheint mit dem Config-File nun alles in Ordnung zu sein...

Geh nochmal im PhpMyAdmin zu den Usern, du hast dort 4 User, davon sind zwei Root-User. Am Besten setzt du für alle 4 ein Kennwort (kann auch immer Dasselbe sein).
 
A

abu

Guest
@Amroc: Wenn du möchtest, probier folgendes:

  1. Definiere ein blowfish_secret wie bereits von FloHoCH vorgeschlagen. Den Code darfst/solltest du selbst definieren.
    Code:
    $cfg['blowfish_secret'] = 'KL3iuklsdfjlkh3rHJKFDf';
  2. Setze auth_type auf 'cookie' statt 'http'.
    Code:
    $cfg['Servers'][$i]['auth_type'] = 'cookie';
  3. Ergänze die Zeilen
    Code:
    $cfg['Servers'][$i]['user'] = 'root';
    $cfg['Servers'][$i]['password'] = 'password';
    durch deine richtigen Angaben. Ich hoffe, dein Passwort ist nicht 'password'. ;)
All das restliche advanced Zeug kannst du auskommentieren oder entfernen. Ausser die Zeilen
Code:
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
am Ende, die lässt du stehen.

Vergiss nicht, nach der Konfiguration das Ding wieder abzudichten. Setze die Berechtigungen wie ich sie dir bereits vorgeschlagen habe.
 

Amroc

Stammgast
So, hab jetzt mal getan was ihr mir vorgeschlagen habt
- für alle User ein Passwort gesetzt
- Das config file so bearbeitet wie abu vorgeschlagen hat

Jetzt kam immerhin schonmal ein Feld für den Login, doch das sah irgendwie merkwürdig aus (siehe Dateianhang)
Und einloggen konnte ich mich wiederum nur dann, wenn ich das Passwortfeld leer gelassen habe...

Meine config datei:
Code:
<?php

/* $Id: config.sample.inc.php 9675 2006-11-03 09:06:06Z nijel $ */
// vim: expandtab sw=4 ts=4 sts=4:

/**
 * phpMyAdmin sample configuration, you can use it as base for 
 * manual configuration. For easier setup you can use scripts/setup.php
 *
 * All directives are explained in Documentation.html and on phpMyAdmin 
 * wiki <http://wiki.cihar.com>.
 */

/* 
 * This is needed for cookie based authentication to encrypt password in 
 * cookie
 */
$cfg['blowfish_secret'] = 'daksdjkaje98320as'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

/* 
 * Servers configuration
 */
$i = 0;

/* 
 * First server
 */
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'password';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
/* Select mysqli if your server has it */
$cfg['Servers'][$i]['extension'] = 'mysql';
/* User for advanced features */
//$cfg['Servers'][$i]['controluser'] = '';
//$cfg['Servers'][$i]['controlpass'] = '';
/* Advanced phpMyAdmin features */
//$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
//$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
//$cfg['Servers'][$i]['relation'] = 'pma_relation';
//$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
//$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
//$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
//$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
//$cfg['Servers'][$i]['history'] = 'pma_history';

/* 
 * End of servers configuration
 */

/*
 * Directories for saving/loading files from server
 */
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';

?>
 

Anhänge

  • PMA_cookie_login.jpg
    PMA_cookie_login.jpg
    13,9 KB · Aufrufe: 14

Dragonlord

PCtipp-Moderation
Teammitglied
Benutzername

Was hast Du für einen komischen Benutzername. Ich vermute bald Du hast ein Problem mit den Schemas.

Sobald Dein Benutzername solche Zeichen enthaltet ist es meistens ein Problem mit dem Zeichnsatz welcher verwendet wird.

Lasse mal für einen erneuten Versuch alle Sonderzeichen weg (Benutzername/Passwort).

lg Roger
 

Amroc

Stammgast
Der Benutzernamen ist root und mein Passwort enthält ebensowenig Sonderzeichen wie der Blowfishcode.

Für was ist der Blowfishcode überhaupt da? Das hab ich noch nicht ganz verstanden.
 

Dragonlord

PCtipp-Moderation
Teammitglied
Bild

Ich habe nur auf dem Bild, dass Du mitgeschickt hast, einen komischen Benutzername entdeckt und dachte vielleicht könnte es daran liegen.

lg Roger
 

Amroc

Stammgast
Ja, das stand eben schon automatisch dort drin und ich frage mich wieso? Sollte das der Benutzernamen sein, den er aus dem Config-File ausgelesen hat, dann besteht wohl wirklich ein Problem mit dem Zeichensatz...
 

FloHoCH

Stammgast
Wenn ich das richtig sehe sind folgende zwei Zeilen immernoch nicht auskommentiert oder gelösht worden:

Code:
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'password';

Ich vermute mal, dass diese das Problem verursachen, denn die werden für ein direktes Login verwendet.

Der Blowfishcode dient der Sicherheit oder der Eindeutigkeit des Cookie, ganz genau weis ich es auch nicht auswendig.

Du kannst eigentlich den Inhalt von meinem Config-File (auf Seite 1) kopieren, ich glaube da fehlt nix.

Kannst du mal ein PrintScreen von der Seite, bei welcher du die Kennwörter gesetzt hast posten?
 
A

abu

Guest
Wenn ich das richtig sehe sind folgende zwei Zeilen immernoch nicht auskommentiert oder gelösht worden:

Code:
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'password';

Ich vermute mal, dass diese das Problem verursachen, denn die werden für ein direktes Login verwendet.

Also ich habe dort mein echtes Passowrt drin. Dasselbe habe ich Amroc weiter oben auch vorgeschlagen. Ich muss mich genauso an phpmyadmin anmelden, kein Auto-Login.

Übrigens wird bei mir beim Login der Zeichensatz "English (UTF-8)" angezeigt.
 
Zuletzt bearbeitet:

FloHoCH

Stammgast
Also ich habe dort mein echtes Passowrt drin. Dasselbe habe ich Amroc weiter oben auch vorgeschlagen. Ich muss mich genauso an phpmyadmin anmelden, kein Auto-Login.

Dann habe ich wohl die englische Doku falsch verstanden. Oder bei dir gibt es einen Konflikt - hast du es schon mal ohne versucht?
 
Oben