# mysql Server + phpmyadmin

## GentooXindi

Hi,

Wie funktioniert das eigentlich mit diesem mysql Server? Installation war kein Problem, /etc/init.d/mysql start auch kein Problem, so und jetzt gehts los. Irgendwo nach der Installation stand irgendwas von einem default user, den ich anlegen muss, und da fängts an: Wie soll ich wissen, was der MYSQL Hostname ist? Ist das der Eintrag aus /etc/hostname oder wie? Dann stand da irgendwas von root -u, aber welcher root? Ist das jetzt nun root für mysql, also ein ganz neuer root, nur für mysql oder ist der linux root gemeint, oder wie? Mit diesem ganzen Hostname getue kenne ich mich ehrlich gesagt sowieso nicht aus. In /etc/hosts habe ich... (meine ip stelle ich als 255 x 4 dar) 

 *Quote:*   

> 
> 
> 127.0.0.1	localhost
> 
> 255.255.255.255 linux #Diese Zeile musste ich hinzufügen, damit mein Apache verbindung bekommt. 
> ...

 

"linux" ist das, was in /etc/hostname steht.

"homenet" steht in /etc/dnsdomainname, aber was zum Henker ist das eigentlich? Ich verstehe überhaupt nicht, was für wofür steht und was ich da jetzt beim mysql Server angeben muss? 

Um dieser ganzen Verwirrung zu entgehen, installierte ich phpmyadmin, was ich ohnehin wollte, um Tabellen anlegen zu können, aber als ich es endlich php mit Apache2 zum laufen gebracht hatte, kam plötzlich ein mod_auth Popup, wo ich natürlich wieder nicht wusste, was ich da eingeben soll. Wenn ich erneut auf phpmyadmin gehe, bekomme ich nur folgendes:

 *Quote:*   

>  Server localhost
> 
> Error
> 
> MySQL said:
> ...

 

Wenn ich jetzt config.inc.php aufrufe bringt mir das auch nicht viel. Da steht wieder irgendwas von $cfg['Servers'][$i]['host']          = 'localhost'; // MySQL hostname or IP address, wodurch ich wieder am Anfang meiner Verwirrung wäre. Vielleicht kann mir jemand Klarheit schaffen.

----------

## dakjo

Das geht ganz einfach :

Liess erst das und dann das und dann vielleicht noch das.

----------

## dertobi123

Du hast das einfo von phpmyadmin beachtet?

----------

## GentooXindi

 *Quote:*   

> 
> 
> Liess erst das und dann das und dann vielleicht noch das.
> 
> 

 

Danke, es ist sehr hilfreich, die 1000 Seiten mySQL Manual zu posten, anstatt mir einfach in 3-4 Sätzen zu erklären, wie hostname, dnsdomainname mit dem mysqlhostname und dem User zusammenhängt.

 *Quote:*   

> 
> 
> Du hast das einfo von phpmyadmin beachtet?
> 
> 

 

Was habe ich von phpmyadmin, wenn am mySQL Server kein User angelegt ist, da ich nicht weiß, was der mysql host jetzt genau ist?

----------

## dakjo

Pass auf, ganz einfach. 

Host ist der Rechnername.

DNSDOMAINNAME ist nur die Domain. Also der name des Netzwerkes.

Ein FQND also ein Full Qualified Domain Name wäre dann der Hostname.DNSDOMAINNAME. 

Zu deinem  *Quote:*   

> Dann stand da irgendwas von root -u, aber welcher root? Ist das jetzt nun root für mysql, also ein ganz neuer root, nur für mysql oder ist der linux root gemeint, oder wie?

  Problem.

Nein das ist der normale Linux root user.

So und zu deinem  *Quote:*   

> Danke, es ist sehr hilfreich, die 1000 Seiten mySQL Manual zu posten, anstatt mir einfach in 3-4 Sätzen zu erklären, wie hostname, dnsdomainname mit dem mysqlhostname und dem User zusammenhängt.

  Problem.

Würdest du denn Anfang lesen, z.B.  Abschnitt 5.3 MySQL-Benutzerkonten-Verwaltung wüsstest du was der root user ist.

Noch was du wirst kein sql bzw. mysql bzw. phpmyadmin nutzen können wenn du mysql nicht auf der shell kannst. Also liess es lieber.

----------

## Sas

Um ehrlich zu sein denke ich aber auch, du solltest etwas mehr Eigeninitiative beim Erarbeiten deiner Problemlösungen zeigen.

Es ist ja nicht so, dass wir nicht gerne helfen (ich habe ja auch ausführlich in deinem Runlevel-Thread geantwortet), aber es ist doch lästig und etwas frustrierend, wenn immer die gleichen Fragen beantwortet werden müssen, die sowieso jede Doku erläutert.

Grüße, Sas

----------

## dakjo

 *Sas wrote:*   

> Um ehrlich zu sein denke ich aber auch, du solltest etwas mehr Eigeninitiative beim Erarbeiten deiner Problemlösungen zeigen.
> 
> Es ist ja nicht so, dass wir nicht gerne helfen (ich habe ja auch ausführlich in deinem Runlevel-Thread geantwortet), aber es ist doch lästig und etwas frustrierend, wenn immer die gleichen Fragen beantwortet werden müssen, die sowieso jede Doku erläutert.
> 
> Grüße, Sas

 

Danke

----------

## GentooXindi

Ich glaube jetzt habe ich es sowieso total versaut. Ich habe mit mysqlcc alles aus der linken Box herausgelöscht, weil da zB root@localhost, root@linux, und noch 2 Sachen standen, und ich nicht weiß ob es am rauslöschen liegt, dass ich jetzt nicht mal mehr das mysql Kommando ausführen kann.  Mal sehen, was ein neu kompilieren bringt....

----------

## dakjo

Erstens brauchst du die nicht neukompilieren, sondern nur mysql_install_db aufrufen. Zweitens hättest du das gewust, hättest du die Doku gelesen.

Drittens --- Wenn du phpmyadmin willst must du in die /etc/mysql/my.cnf folgende einträge machen :

```

# keep secure by default!

bind-address    = 192.168.***.*** ---> Deine IP eintragen

port            = 3306

# this can make it even more secure:

#skip-networking ---->  Auskommentieren

```

Hättest du die doku von phpmyadmin gelesen, wüsstest du auch, das phpmyadmin nur über TCP/IP und nicht über UNIX-Sockets funktioniert.

Hättest du die mysql Doku gelesen wüsstest du, das du diese einstellungen machen musst, damit mysql auch tcp/ip verbindungen annimmt.

----------

## Sas

Ich weiß zwar ehrlich gesagt nicht, was du mit der linken Box meinst, aber vielleicht hilft dir das hier ja weiter: http://dev.mysql.com/doc/mysql/en/Resetting_permissions.html

Dort erfährst du, wie du wieder Zugang zu deinem MySQL-Server bekommst.

Viel Erfolg!

----------

## GentooXindi

Hi,

also ich bekomme keine Zugänge mehr und mysql_install_db zeigt auch keinen Effekt. Nicht mal nach Stop und Neustart des mysql Servers. 

Ich bekomme dauernd diese Meldungen:

 *Quote:*   

> 
> 
> root@linux markus # /usr/bin/mysqladmin server
> 
> /usr/bin/mysqladmin: connect to server at 'localhost' failed
> ...

 

Bei Google fand ich, dass ich einfach nur die User neu anlegen muss, aber nur wie, wenn ich keinen Zugriff mehr bekomme.

----------

## Deever

@GentooXindi

Warum liest du nicht die Doku? Und wenn du Zeit zum verschwenden hast, könntest du das bitte woanders tun? Danke!

Immerhin bist du auf mysqlcc gestossen. Verhindert zwar nicht PEBKAC, ist aber wesentlich einfacher als phpMyadmin IMHO. Lies dir jetzt mal erst das Kapitel über die MySQL-Rechteverwaltung durch, vorher hats nicht wirklich einen Sinn...

Gruß,

/dev

----------

## GentooXindi

Ich weiß ja, dass es daran liegt, dass ich alle User gelöscht habe, nur kann ich auch keine User mehr anlegen, da es ja offensichtlich keinen User, der zu einloggen fähig war, nicht mehr da ist.  Das alles bringt nichts mehr. Warum hat neu kompilieren nicht wieder einen brandneuen Mysql Server aufgesetzt? Ich habe eigentlich gehofft, dass wieder alle neu angelegt wird, wie bei der ersten Installation, aber stattdessen habe ich mit den gleichen Problem zu kämpfen. 

Das mysqlcc scheint ja auch ziemlich buggy zu sein.  Kaum klicke auf das,was gelb auf dem Screenshot ist, stürzt das Programm ab (Segmentation fault)  http://tools.acid4u.com/mysqlcc.jpg

Übrigens standen dort um die 3 bis 4 Sachen amAnfang, bevor ich großartig gelöscht habe, wodurch ich jetzt in der Klemme sitze.

Ich will nur mehr eines wissen. Was kann ich tun, damit ich wieder mit einer Neuinstallationseinstellung starten kann? mysql_install_db hat nicht geholfen.

----------

## smog_at

 *Quote:*   

> 
> 
> root@linux markus # /usr/bin/mysqladmin server
> 
> /usr/bin/mysqladmin: connect to server at 'localhost' failed
> ...

 

Also ich weiß leider nicht wie Du mysql aufrufst, aber es gibt mehrere Optionen, die eine wäre beispielsweise:

```
mysql -u root -p
```

damit fragt er Dich nach eienm Passwort, das Du aber noch nicht hast, weil ja dort steht (Using password: NO)

Also müsstest Du ja mit folgendem Befehl

```
mysql -u root
```

 zu Deinem MySQL-Monitor kommen, wenn Du dann folgendes siehst

```
mysql>
```

 dann hast Du es bereits geschafft, und Du kannst Dir Deine Datenbank und Tabellen anlegen

Ich würde an Deiner Stelle, so wie es bereits alle gesagt haben zuerst mal die Doku lesen, und falls dann noch Fragen auftauchen, diese Stellen. Unter anderem kannst Du mal auf http://www.mysql.org schauen, und dort lesen.

Bevor Du jedoch auf phpmyadmin oder sonstige GUI oder Web basierten Installationsroutinen zugreifst, würde es Dir besser tun, wenn Du Dich mal rein über die Konsole mit dem MySQL-Monitor beschäftigst. Da wirst Du wahrscheinlich am meisten lernen.

MfG smog_at

----------

## Deever

 *GentooXindi wrote:*   

> Warum hat neu kompilieren nicht wieder einen brandneuen Mysql Server aufgesetzt?

 

Hat es.

Nur die Datenbankdateien hat es nicht gelöscht, was auch total bekloppt gewesen wäre. Schliesslich will man ja einen neuen MySQL Server kompiliern, um den alten upzudaten, nicht um u.U. wichtige Daten zu löschen. Dafür gibts DELETE.

 *Quote:*   

> Das mysqlcc scheint ja auch ziemlich buggy zu sein.

 

Es stürzt IIRC nur dann ab, wenn es ein "Connection refused" erhält.

Nicht gut, aber auch nicht sonderlich schlimm, da man ja wissen wird, wo der Server läuft. (SCNR)

 *Quote:*   

> Ich will nur mehr eines wissen. Was kann ich tun, damit ich wieder mit einer Neuinstallationseinstellung starten kann?

 

Die Datenbankdateien löschen und mysql_install_db ausführen. Steht sicher auch im Manual.

 *Quote:*   

> mysql_install_db hat nicht geholfen.

 

Frage: *Was* macht eigentlich mysql_install_db?  :Rolling Eyes: 

Hint: '$PAGER $(which mysql_install_db)' hilft.

Gruß,

/dev

----------

## Deever

 *smog_at wrote:*   

> Unter anderem kannst Du mal auf http://www.mysql.org schauen, und dort lesen.

 

Du meinst sicher http://www.mysql.com!  :Wink: 

----------

## smog_at

Ja, meinte ich sorry, bei http://www.mysql.org kommt man ja auf die Developer Seite. Wollte niemanden verwirren  :Smile: 

MfG smog_at

----------

## GentooXindi

 *Quote:*   

> 
> 
> Also müsstest Du ja mit folgendem Befehl
> 
> Code:
> ...

 

-> ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO)

Es existieren keine User mehr, wie ich bereits sagte und genau das ist jetzt das Hauptproblem.  Irgendwo muss es doch eine Datei geben, wo Linux erkennt, ob es sich um eine Neuinstallation handelt, oder nicht. Daraufhin habe ich mal emerge unmerge mysql ausgeführt, und wieder emerge mysql, aber offensichtlich wurde wieder nicht das gelöscht, was ich will. Als ich nach der "Neuinstallation" von mysql 

 *Quote:*   

> 
> 
> ebuild /var/db/pkg/dev-db/mysql-4.0.18-r2/mysql-4.0.18-r2.ebuild config
> 
> 

 

ausführe, meint er wieder nur, dass bereits eine datenbank existiert, argh. 

 *Quote:*   

> 
> 
> Nur die Datenbankdateien hat es nicht gelöscht, was auch total bekloppt gewesen wäre. Schliesslich will man ja einen neuen MySQL Server kompiliern, um den alten upzudaten, nicht um u.U. wichtige Daten zu löschen. Dafür gibts DELETE. 
> 
> 

 

...wobei ich mich wieder im Kreis drehe. Wie kann ich Daten löschen, wenn ich nicht mal mehr reinkomme, da es keinen User gibt, der die Daten löschen könnte, aber solange die Daten nicht gelöscht sind, erstellt mysql mit mysql_install_db keine neuen Standarduser, wie bei der Erstinstallation.

Die Ironie ist aber, dass ich ein Tut. gefunden hätte, das mein ursprüngliches Problem wahrscheinlich gelöst hätte, da beschrieben wurde, was ich wo eintragen muss, um phpmyadmin mit apache und mysql benutzen zu können.

----------

## GentooXindi

Das wars. Einfach die Datenbanken aus /var/lib/mysql löschen und er hat endlich neue Datenbanken angelegt, wo ich mit dem mysql Kommando wieder eine mysql Prompt bekomme. In mysqlcc sind jetzt auch wieder die Punkte "User Administration" und "Server Administration" vorhanden. 

Ich glaube den Rest schaffe ich alleine. Danke für eure Hilfe jedenfalls.

----------

