Mysql hängt sich bei Restart auf

Anonymous

Mysql hängt sich bei Restart auf

Post by Anonymous »

Moin Leute,

ich habe folgendes Problem mit meinem Webserver:

Bei den täglichen restarts von mysql kommt es oftmals zu folgender Meldung:

Code: Select all

070130  3:50:07 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use
070130  3:50:07 [ERROR] Do you already have another mysqld server running on port: 3306 ?
070130  3:50:07 [ERROR] Aborting
Daraufhin sagt mysql.d zwar, dass er "Ready" wäre aber die Datenbank hängt dann bis zu einem erneuten restart und akzeptiert keine neuen Verbindungen.
Es läuft InnoDB, das während dem Restart ("InnoDB: Database was not shut down normally! InnoDB: Starting crash recovery.") die Datenbank wiederherstellt.

a) Hat jemand eine Idee, an was das Problem mit dem Bind liegen kann??
b) Und kann evtl. einen Tipp zur Lösung geben??
c) oder kann man die restarts ggf. weglassen und die Datenbank anderweitig in Schuß halten??

Danke an euch schonmal
Bernd
Top

captaincrunch
Userprojekt
Userprojekt
Posts: 7225
Joined: 2002-10-09 14:30
Location: Dorsten

Re: Mysql hängt sich bei Restart auf

Post by captaincrunch »

Code: Select all

kill `netstat -pletn|grep ':3306'|awk '{print $8}'`
Danach noch mal versuchen.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Top

User avatar
daemotron
Administrator
Administrator
Posts: 2800
Joined: 2004-01-21 17:44

Re: Mysql hängt sich bei Restart auf

Post by daemotron »

Bernd-ISX wrote:c) oder kann man die restarts ggf. weglassen und die Datenbank anderweitig in Schuß halten??
IMHO gibt es keinen rationalen Grund, einen mysqld einmal am Tag per se durchzustarten, um ihn "in Schuss zu halten" (was auch immer Du damit bezweckst).

Ansonsten solltest Du mal Dein Start-/Stop-Skript unter die Lupe nehmen, offenbar gibt's da ein paar Schwierigkeiten. Entweder wartet es nicht lange genug bei stop, bis der mysqld wirklich heruntergefahren ist, und/oder es wird das falsche Signal geschickt.
Top

User avatar
isotopp
RSAC
Posts: 482
Joined: 2003-08-21 10:21
Location: Berlin

Re: Mysql hängt sich bei Restart auf

Post by isotopp »

Bernd-ISX wrote:Bei den täglichen restarts von mysql kommt es oftmals zu folgender Meldung:
Wenn Du MySQL restartest, sind die Key-Caches des Servers danach Kalt und die Performance des Servers ist sehr schlecht. Das gilt besonders für InnoDB, das vom File System Buffer Cache des Betriebssystems nicht profitiert und tatsächlich bei einem Restart von 0 anfängt.

Wenn es nicht absolut notwendig ist, soll der Server nicht neu gestartet werden.
b) Und kann evtl. einen Tipp zur Lösung geben??
Wenn Du den Server stoppen willst, finde das PID-File des Servers. Lies die PID daraus und schieße den Prozeß mit einem "kill -1 $PID" ab. Warte nun, bis das PID-File verschwunden ist. Danach kannst Du den Server neu starten.

Code: Select all

#! /bin/bash --

MYSQL_CMD_DIR=.../bin
MYSQL_DIR=...
cd $MYSQL_DIR

HOSTNAME=$(hostname)
PIDFILE="$MYSQL_DIR/data/$HOSTNAME.pid"

if [ -s $PIDFILE ]
then
  kill $(cat $PIDFILE)
else
  echo "There is no $PIDFILE or it is empty. Can't kill."
  exit 1
fi

echo -n "Waiting for server shutdown: "
while [ -s $PIDFILE ]
do
  echo -n "."
  sleep 1
done
echo "gone."
exit 0
Top

Anonymous

Re: Mysql hängt sich bei Restart auf

Post by Anonymous »

Moin,

Danke für die Hinweise.
Also werfe ich den Restart erstmal raus :-)
Und falls doch wieder nötig, habe ich jetzt dafür genügend Hinweise :)

(Restart-Script, also rcmysql, ist das Original-SuSE, vielleicht nicht gerade für Mysql-Datenbanken mit 1 Gigabyte Daten gedacht).

Grüße
Bernd
Top