[Solved] Mysql Server funktioniert nicht richtig

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
spay
Beiträge: 19
Registriert: 10.07.2009 11:15:39
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Hamburg

[Solved] Mysql Server funktioniert nicht richtig

Beitrag von spay » 21.08.2013 21:44:11

Hallo zusammen,

ich habe auf meinem NAS ein Mysql Server eingerichtet der, anfangs auch funktionierte. Mein Problem ist nun das er, bei einem Neustart nicht automatisch startet da mein NAS seine IP erst später beim Start zugewiesen bekommt.

Code: Alles auswählen

Aug 21 08:53:22 rorschach mysqld: 130821  8:53:22 [ERROR] Can't start server: Bind on TCP/IP port: Cannot assign requested address
Aug 21 08:53:22 rorschach mysqld: 130821  8:53:22 [ERROR] Do you already have another mysqld server running on port: 3306 ?
Wenn ich ihn dann aber, manuell starte ist alles ok. Ich habe mit dem Befehl

Code: Alles auswählen

update-rc.d mysql defaults 99
den Dienst hinten angestellt aber das geht genau für einen Neustart und dann geht es wieder nicht mehr.

Kann mir da einer weiter helfen?

Danke
Zuletzt geändert von spay am 14.02.2014 13:54:33, insgesamt 1-mal geändert.

pferdefreund
Beiträge: 3799
Registriert: 26.02.2009 14:35:56

Re: Mysql Server funktioniert nicht richtig

Beitrag von pferdefreund » 22.08.2013 06:55:10

Schnelle Lösung - ein sleep 60 in den Startscript und der wartet ne MInute - sollte reichen. (bei DO_START...)

spay
Beiträge: 19
Registriert: 10.07.2009 11:15:39
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Hamburg

Re: Mysql Server funktioniert nicht richtig

Beitrag von spay » 22.08.2013 12:34:08

pferdefreund hat geschrieben:Schnelle Lösung - ein sleep 60 in den Startscript und der wartet ne MInute - sollte reichen. (bei DO_START...)
Danke für die Antwort aber damit verzögert sich der ganz Start ja auch um eine Minute...

Ich dachte eigentlich, da im init Script von mysql ja steht das erst der Netzwerk Dienst gestartet werden soll dass das Script tatsächlich wartet aber da habe ich mich wohl getäuscht oder muss man den Bereich auskommentieren?

pferdefreund
Beiträge: 3799
Registriert: 26.02.2009 14:35:56

Re: Mysql Server funktioniert nicht richtig

Beitrag von pferdefreund » 22.08.2013 13:47:00

Wieso - du rufst im Init-Script beim Start ein weiteres Script mit & am ende auf (dann geht das in den Hintergrund) und
da dann der eigentliche Startbefehl nach dem sleep-Befehl. Mach ich doch auch bei mir so mit dem ntp-update, weil die Netzwerkkarte
und der Router zu Hause kleine Dödel sind. Oder Aufruf per kleinem C-Programm, dass sich erst in den Hintergrund forked - mach ich auch bei einigen Sachen..

spay
Beiträge: 19
Registriert: 10.07.2009 11:15:39
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Hamburg

Re: Mysql Server funktioniert nicht richtig

Beitrag von spay » 22.08.2013 22:00:12

Puh da hast Du mich jetzt abgehängt...
wie rufe ich denn im init Script ein weiteres Script auf ohne dass das ganze System dann wartet?

Das mit dem kleinem C Programm vergessen wir am besten ganz schnell wieder da ich mit dem Programmieren auf dem Kriegsfuß stehe. :lol:

pferdefreund
Beiträge: 3799
Registriert: 26.02.2009 14:35:56

Re: Mysql Server funktioniert nicht richtig

Beitrag von pferdefreund » 23.08.2013 07:00:05

Da wo der Befehl zum Starten von mysql steht,
z. b /usr/local/bin/privatstart & hinschreiben. Wichtig ist der & - sonst wirds nix
in /usr/local/bin/privatstart steht dann:

Code: Alles auswählen

#!/bin/bash
echo "Starten Mysql mit Verzoegerun..."
# wir warten ne Minute
sleep 60
# und los
dein Original-Startbefehl aus dem Init-Script
exit $?
Das ganze noch mit chmod ausführbar machen und gut is...
Bitte beachten, den Original-Initscript vorher zu sichern - und den geänderten auch, da der ggf bei einem Update
überschrieben werden könnte - und dann weiß man nach Wochen oft nicht mehr, was man am System geändert hat.
Daher gibt es in meinem /home/pferd nen Ordner doku, wo ich sowas dann reinschreibe. Wenn was nicht mehr klappt,
schau ich dann erst mal da nach, wo ich rumgepfuscht habe.


Hier noch dass kleine C-Programm - der #include <libpferd.h> muss raus
und die funktion nonewline selbst gebastelt werden - da wird nur das
new-line, falls vorhanden, entsorgt.

Code: Alles auswählen

#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <tzn.h>
#include <unistd.h>
#include <libpferd.h>
// aenderung am 01.03.2013
// automatisches ergaenzen &
int rc;
char cmdtab[20][256];
char cmd[1024];
int itab;
int pid;
int cmdlength;
int main(int argc, char *argv[]) {
#include <tzp.h>
if (argc > 20) {
rc = 1;
printf("Zu viele Argumente\n");
exit (rc);
}
if (argc < 2) {
rc = 1;
printf("Bitte Programm mit Parametern eingeben, dass als\n");
printf("Hintergrundprozess laufen soll\n");
exit(rc);
}
strcpy(cmd,"");
itab = 1;
while (itab < argc) {
strcat(cmd,argv[itab]);
nonewline(cmd);
strcat(cmd," ");
itab = itab + 1;
}
printf(cmd);
cmdlength=strlen(cmd);
/* - 2, weil weiter oben noch */
/* ein space angehaengt wird  */
cmdlength=cmdlength - 2;
if (cmd[cmdlength] ==  '&') {
printf("& schon vorhanden - nix zu tun");
}
else {
strcat(cmd," &");
printf("%s%s","Cmd changed:",cmd);
}
printf("\n");
pid = fork();
if (pid > 0) {
printf("\n");
return 0;
} 
rc = system(cmd);
return rc;
}

spay
Beiträge: 19
Registriert: 10.07.2009 11:15:39
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Hamburg

Re: Mysql Server funktioniert nicht richtig

Beitrag von spay » 14.02.2014 13:52:31

Sorry hat das Thema aus den Augen verloren.
Ich habe es so
pferdefreund hat geschrieben:#!/bin/bash
echo "Starten Mysql mit Verzoegerun..."
# wir warten ne Minute
sleep 60
# und los
dein Original-Startbefehl aus dem Init-Script
exit $?
probier und es Funktioniert. Somit ist dieses Problem gelöst.
Danke für die Hilfe

Antworten