• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

mysql - Startprobleme

A

Anonymous

Gast
Hi,
ich versuche mich mal an mysql heranzutasten. Früher habe ich allerhand mit Informix und Oracle gemacht und nun mal mysql.
Die Software ist installiert.
Selflinux bietet auch einiges an Doku an, nur bereits de[/code]r erste Kontaktversuch zu mysql misslingt bereits:
Code:
# mysqladmin -u root -h localhost ping 
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/var/lib/mysql/mysql.sock' exists!
Okay checken wir das mal:
Code:
# ps -ef | grep mysql 
root      6484  6422  0 16:56 pts/0    00:00:00 grep mysql
und dann
Code:
# mysqld start
mysqld: Too many parameters
mysqld  Ver 3.23.55 for suse-linux on i686
Use '--help' or '--no-defaults --help' for a list of available options
bzw.
Code:
# mysqladmin -u root -h localhost ping 
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/var/lib/mysql/mysql.sock' exists!

Wo liegt der Haken?
 
OP
A

Anonymous

Gast
Hallo ernst,

und dann
Code:
# mysqld start
mysqld: Too many parameters
mysqld Ver 3.23.55 for suse-linux on i686
Use '--help' or '--no-defaults --help' for a list of available options


Ich gehe mal davon aus das du Suse benutzt. Also, mysql starten.:

rcmysql start


Es funktioniert auch.:


/etc/init.d/mysql start


Oder aber über Yast, da musst du sowieso festlegen das mysql beim Systemstart gestartet wird. Wenn du das willst, heisst es.
 
OP
A

Anonymous

Gast
Hi,
das Starten der Datenbank klappt, aber das wars auch schon:
Code:
# mysqladmin -u root -h localhost ping
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user: 'root@localhost' (Using password: NO)'
Und nun?
 
OP
A

Anonymous

Gast
Hallo ernst,

ist dein mysql noch im Urzustand oder hast du dich da schon mal an den Rechten versucht? Von welchem Rechner versuchst du auf die Datenbank zuzugreifen, vom localhost? Du bist etwas sparsam mit Informationen.
 

willy101

Newbie
ernst schrieb:
Hi,
das Starten der Datenbank klappt, aber das wars auch schon:
Code:
# mysqladmin -u root -h localhost ping
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user: 'root@localhost' (Using password: NO)'
Und nun?

Ich bin mir nicht sicher, aber ich glaube, bevor du ein ping absetzen kannst, mußt du erst den User anlegen. Also ping im mysqladmin Aufruf weglassen.

evtl. hilft
Code:
# mysqladmin -u root -h localhost password 'new-password'
# mysqladmin -u root password 'new-password'
# msqladmin -u root -h rechnername password 'new-password'

Das 2. Beispiel sollte ein Connect von jedem beliebigen Rechner aus erlauben.
Im 3. Beispiel ist rechnername der "echte Name" des Rechners auf dem der Datenbankserver läuft

new-password durch das gewünschte Kennwort ersetzen
bzw. password 'new-password' weglassen, wenn kein Kennwort gewünscht wird

willy
 

moenk

Administrator
Teammitglied
Ich kann Anfängern nur empfehlen, für den mysql die Oberfläche phpMyAdmin zu verwenden. Da kann man auch Passwörter komfortabel verwalten. Um mysql in den Urzustand zu versetzen den Server stoppen und alles in /var/lib/mysql löschen. Dann neu starten mit "/etc/init.d/mysql start".
 

c0b0lt

Newbie
Hallo,
also ich hab genauso Probleme mit MySql.
Habe das auch mal Versucht mit phpMyAdmin, aber der installiert pHp und mysql nicht dazu (bei mir zumindest)
Naja, hab dann die einzelnen Pakete installiert und wollte es starten mit # rcmysql start
Code:
 Starting service MySQL     failed
Hmm .. dann nochmal probiert
Code:
 Starting service MySQL     done
Das gleiche funktioniert auch mit # mysql start ..
Mit pHpMyAdmin kommt manchmal
Code:
 #1045 - Access denied for user: 'root@localhost' (Using password: NO)
.. und manchmal
Code:
 #2002 - Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
Könnt ihr mir da helfen.
Es kann sein, dass ihr vielleicht schon Lösungen weiter oben genannt habt, aber ich bin noch nicht so erfahren in der Linux-Welt, sodass ihr mir es vllt. näher erklären müsst.
 

Deichi

Newbie
Hallo zusammen.

Ich versuche mal, gleich mehreren von euch zu helfen. :)

Code:
 Starting service MySQL     failed

Wenn du einen Kernel 2.4 bei SuSE verwendest, kann das 2 Ursachen haben. Für SuSE 7.1 gibt es einen Bug im Programm startproc (siehe SDB), das den Start der Datenbank nicht bemerkt.

Für höhere Versionen (ich verwende hier SuSE 9.0) kann es eine andere Ursache haben: Die Startskripte verwenden den User "root". Dummerweise muss "root" bei mir aber ein Passwort verwenden, wenn er sich mit der Datenbank verbindet. (Ist ja wohl auch zu empfehlen!)
Die Startskripte verwenden aber (mal mit Übersetzung der Variablen)
Code:
mysqladmin ping
, um den erfolgreichen Start zu überprüfen.
Guck mal mittels
Code:
ps aux
oder dergleichen, ob MySQL nicht vielleicht doch läuft. (Sollte es eigentlich)

Nun darf aber in der normalen Rechte-Einstellung jeder beliebige User (also z.B. "mysql" ein mysqladmin ping ausführen. Also root z.B. ein
Code:
mysqladmin -u mysql ping

Ändert man also im Startskript (/usr/sbin/rcmysql) das Kommando in
Code:
$MYADMIN -u %mysql_daemon_user ping &>/dev/null && i='' && break
, dann sollte das Skript wieder einwandfrei funktionieren.

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

Das ist das, was im Prinzip das Startskript zurückbekommt. Root sollte nur mit Passwort zugreifen können. (Also mit mysql[admin] -u root -p und Eingabe des Passwortes oder gleich dem p folgend)
Das heisst also so viel wie "Du Idiot hast das "-p" vergessen" ;)

Code:
 #2002 - Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

Das bedeutet in der Regel, dass MySQL nicht läuft.
(Oder das in diversen Konfigdateien der Pfad zum Socket falsch eingetragen ist oder das gar kein Socket zur Verfügung gestellt wird. )

Ich hoffe, das hat jemandem weiter geholfen :)
SD
 
hallo leute,

also ich habe mir ein Webserver aufgesetzt.
Habt das so gemacht, das ich PhpMyAdmin installiert haben, und das dieser dann die entsprechenden Dateien selbstständig installiert hat.
Diese Anleitung habe ich hier im Forum gefunden (kennt bestimmt jeder)

Soweit funktioniert auch alles, mit php.
Hab ne phpinfo datei erstellt und wird alle angezeigt.

nun der fehler:
beim starten der MySql DB kommt dieser fehler (hatten andere auch)
Fehler
MySQL meldet:


#2002 - Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)


achja, den den ordner mysql gibt es nicht unter lib , somit auch nicht die mysql.sock

hat jmd ne idee, was ich da machen kann bzw muss ??
ps: bin ein noob in sachen linux, also bitte so einfach wie möglich, hab heut erst angefangen.

achja, hab Suse 9.0

mfg
Stabmaster[/b]
 
OP
A

Anonymous

Gast
Hallo,

ich habe ein änlichen Problem:

Ich habe MySQL mit YAST eingerichtet.

Wenn ich versuche der MySQL-Server mit "rcmysql start" zu starten bricht dieser ab. In der Datei /var/lib/mysql/mysqld.log steht dann folgendes:

040522 17:42:24 mysqld started
040522 17:42:24 /usr/sbin/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
040522 17:42:24 mysqld ended

Die Datei host.frm existiert unter /var/lib/mysql/mysql.

Vielen Dank schon mal für eine Antwort..
 
Oben