Blog

Erfahrungsbericht – Sigma 150mm 2.8 Makro

2 comments

Jetzt ist es endlich da! Mein neues Objektiv SIGMA 150mm F2,8 EX DG APO HSM IF MAKRO. Natürlich habe ich auch schon ein Foto damit gemacht. Um Euch mal zu zeigen, was es kann, hier das erste Bild mit dem Objektiv:

erstes Makro

In meinem Beitrag vom 22.05.2008 habe ich darüber berichtet, dass ich mir das oben genannte Objektiv im Internet bestellt habe. Ich habe so 102 Euro gegenüber dem Ladenkauf gespart. Ich finde, das hat sich gelohnt!

Viele behaupten ja, dass das Objektiv Schwächen in der Abbildungsleistung aufzeigt, wenn man entferntere Motive ablichtet. Ich habe bei bestem Willen versucht irgendwelche Schwächen zu erkennen. Keine Chance! Im Makrobereich habe ich bisher kaum Erfahrungen, aber wie man erkennen kann, ist die Leistung sehr gut.

Richtig ist, dass es bei Makroaufnahmen vorkommt, dass der Autofokus nicht genügend Kontrast zum Fixieren eines Punktes findet. Da fehlt mir jeglicher Vergleich zu anderen Objektiven. Meine ersten Erfahrungen zeigen jedoch, dass man bei Makroaufnahmen den Autofokus besser abschaltet, da es viel zu mühsam und langwierig ist, die Kamera erst auszurichten, bevor der Autofokus greift.

Ansonsten ist der Autofokus wirklich schnell und hat auch bei schwachen Lichtverhältnissen kein Problem ein Ziehl zu finden! Der HSM ist sehr leise. Die Restgeräusche müssen sein, ansonsten würde es ja keine Spaß mehr machen.

Ich habe Testberichte gelesen, wonach das Objetiv am Kameraanschluss viel „Spielraum“ hat. Auch diesen Testberichten kann ich nun keinen Glauben mehr schenken. Bei mir wackelt nichts! Das Objektiv sitzt sogar noch ein ganz kleinen Tick fester auf dem Body als meine Originalen.

Für jeden von Euch, der noch am Zweifeln ist, ob oder ob nicht dieses Objektiv die eigene Ausrüstung erweitert, dem kann ich nur sagen: Ich habe es nicht bereut!

JerretErfahrungsbericht – Sigma 150mm 2.8 Makro
mehr lesen

SIGMA 150mm F2,8 EX DG APO HSM IF MAKRO

No comments

Ich habe mich getraut. Vergangenen Montagabend habe ich mir dieses Objektiv bestellt.

Am vergangenen Wochenende war ich bei uns in Kiel bei Photo Dose im Sophienhof. Ich fragte nach dem Preis. Sie hatten es natürlich nicht da und hätten es bestellen müssen. Kurzes Palaber und dann der Preis: 679 EURO!!!

Da ich mich schon länger für dieses Objektiv interessierte, wusste ich, dass es im Internet für ca. 100 Euro weniger zu haben ist.

Hätte mir der gute Herr hinter dem Tresen gesagt, dass es 600 Euro kostet, hätte ich es dort schon mitgenommen. 20 Euro Differenz wäre es mir Wert gewesen. Ich hätte es einen Tag später gehabt und im Garantiefall auch einen Ansprechpartner.

Ich sagte Ihm noch kurz, dass es mir deutlich zu teuer ist und dass ich es im Internet entsprechend günstiger bekomme. Dann ging ich.

Ich gehe davon aus, dass das Objektiv meinen Anspüchen voll entspricht. Sigma selbst beschreibt es wie folgt:

Das neue 150mm F2,8 bietet selbstverständlich auch den Maßstab 1:1, und zwar in gewohnt hervorragender Qualität dank aufwendiger Korrektur der üblichen Abbildungsfehler. Nicht umsonst erhielt das Objektiv unsere Digitalempfehlung. Es ist mit einer Stativschelle für den problemlosen Stativeinsatz ausgestattet. Die mit HSM Antrieb ausgestatteten Anschlüsse bieten den schnellen und flüsterleisen AF, in den Sie jederzeit manuell eingreifen können. Mit dem Limitschalter können Sie den Fokussierbereich entsprechend eingrenzen. Die Einsatzmöglichkeiten lassen sich durch die Kombinationsfähigkeit mit unseren EX Konvertern sogar noch steigern.

Technische Details
Objektivtyp 150/F2,8 EX DG APO IF MAKRO
Kameraanschluss AF:
HSM: AF: CA, NA, SA, FT
Bildwinkel (diagonal) 16,4°
Nahgrenze (cm) 38
Vergrößerung 1:1
Filtergröße (mm) 72
Maße (mm)
Durchm. X Länge
79,6×137
Gewicht (g) 895

Mich würde interessieren, was ihr zu diesem Objektiv sagt. Welche Erfahrungen habt Ihr damit gemacht? Wo liegen die Stärken und Schwächen?

Sobald ich einige Erfahrungen mit diesem Objektiv gesammelt habe, werde ich natürlich hier davon berichten!

JerretSIGMA 150mm F2,8 EX DG APO HSM IF MAKRO
mehr lesen

Permalinks in WordPress ändern

7 comments

Dieser Beitrag soll Anregungen aufzeigen, wie eine schon eine bestehende Permalinkstruktur in WordPress geändert werden kann.

Einleitung

Viele Benutzer von WordPress merken oft leider erst zu spät, dass die gewählte Permalinkstruktur nicht den eigentlichen Wünschen entspricht und möchten diese Struktur nachträglich verändern.

Eine Internetadresse (URL), die aus Zeichen und Nummern nach der Domain besteht ist nicht sehr leserlich oder gar einprägsam. Auch sollen Suchmaschinen mit „sprechenden URL´s“ deutlich besser umgehen können.

Beispiel

Fall

Ich möchte hier auf meinen speziellen fall eingehen, da all die vielen Tutorials im Internet davon ausgehen, dass die Blogs bei Webhostern liegen oder dass man einen eigenen root-Server hat, der nur eine einzige Domain verwalten muss.

Ich dagegen habe gleich mehrere Domains mit jeweils anderen Internetauftritten und jeder Internetauftritt braucht eine andere Webserverkonfiguration.

Wie hab ich es hinbekommen?

Im Prinzip ist es ganz einfach! Es bedarf genau 3 Schritte:

  1. Download/Installation WordPress Plugin von Dean Lee

  2. richtige Serverkonfiguration einstellen (mod_rewrite, Name-based Virtual Hosts, .htaccess)

  3. Anwendung des WordPress Plugins

Das hört sich eigentlich sehr einfach an. In meinem Fall jedoch war es nicht so einfach! Auf den ersten Punkt „Download/Installation WordPress Plugin von Dean Lee möchte ich nicht näher eingehen. Ich gehe davon aus, dass Standardinstallationen von Plugins unter WordPress hinreichend bekannt sind. Genauer möchte ich jedoch Punkt 2 ausführen! Dort lag die eigentliche Arbeit und bedarf einer ausführlichen Betrachtung. Um diesen Beitrag dann abzuschließen, werde ich noch kurz auf die Anwendung des Plugins (Punkt 3) eingehen.

Download/Installation des WordPress Plugins von Dean Lee

siehe : http://www.deanlee.cn/wordpress/permalinks-migration-plugin/

richtige Serverkonfiguration einstellen

Server:
Suse Linux 10.0
Apache Webserver 2.0.54
MySQL 4.1.3

Einige von euch werden sicher schon festgestellt haben, dass eine einfache Aktivierung des Webservermoduls „mod_rewrite“ nicht ausreicht, um die Permalinkstruktur nachträglich zu verändern.

Stichwort:
interner Serverfehler 500
Zugriff verweigert 403

mod_rewrite Aktivieren

Die Aufgabe des Moduls „mod_rewrite“ ist, URL´s so umzuformen, dass URL´s lesbar werden. Dieses Modul ist bei WordPress zwingend erforderlich, wenn man nicht mit der voreingestellten Permalinkstruktur arbeiten möchte.

Die einfachste Art das Modul zu aktivieren ist einen Eintrag in der Datei /etc/sysconfig/apache2 vorzunehmen und den Webserver neu zu starten. Dazu musst Du Dir fogende Zeile in dieser Datei suchen:

APACHE_MODULES=“access actions alias auth auth_dbm autoindex cgi dir env expires include log_config mime negotiation set envif ssl suexec userdir php5 rewrite

Bei mir steht diese Zeile in Zeile 79. Am Ende (die Position ist aber egal) der Zeile, vor den schließenden Anführungszeichen („) habe ich das Word rewrite notiert. Jetzt wird der Apache angewiesen, bei einem Neustart des Services, das Modul „mod_rewrite“ zu laden.

Webserver Neustart

Ein Neustart des Webservers ist sehr leicht. Dazu gibt es 2 Befehle (Es gibt noch mehr Möglichkeite, gehe hier jedoch nicht darauf ein…). Je nach Präferenz kannst Du Dir einen davon aussuchen. Jeder dieser Befehle muss mit root-Rechten ausgeführt werden:

  1. rcapache2 restart -> (Suse Linux typisch)
  2. /etc/init.d/apache2 restart ->(Standard)

Status von mod_rewrite überprüfen

Nach dem Neustart, ist es natürlich wichtig zu wissen, ob das neue Modul vom Webserver geladen wurde. Ein Blick in die Datei /etc/apache2/sysconfig.d wird dabei Helfen. Die Stelle an der Du das rewrite-Modul in /etc/sysconfig/apache2 in der Zeile für APACHE_MODULES notiert hast, bestimmt auch die Reihenfolge der vom Webserver zu ladenen Module. Folgerichtig müsste jetzt bei der Überprüfung der angegebenen Datei ersichtlich sein, dass das rewrite-Modul als letztes geladen wurde.


LoadModule setenvif_module /usr/lib/apache2-prefork/mod_setenvif.so
LoadModule ssl_module /usr/lib/apache2-prefork/mod_ssl.so
LoadModule suexec_module /usr/lib/apache2-prefork/mod_suexec.so
LoadModule userdir_module /usr/lib/apache2-prefork/mod_userdir.so
LoadModule php5_module /usr/lib/apache2/libphp5.so

LoadModule rewrite_module /usr/lib/apache2-prefork/mod_rewrite.so

Ist mod_rewrite aufgeführt, dann ist das Modul richtig geladen.

Named-Based Virtual Hosts

Lässt man auf einem Host mit nur einer IP-Adresse verschiedene Domains/Internetauftritte laufen, kommt man nicht darum herum sich mit diesem Begriff auseinanderzusetzen.

Da Domainnamen immer zu IP-Adressen aufgelöst werden, ich jedoch mehrere Domains/Internetauftritte mit nur einer IP-Adresse verwalte, muss ich meinem Apache Webserver beibringen, dass Anfragen an bestimmte Domains jeweils mit dem richtigen Content beantwortet werden.

Dazu bietet mir der Apache Webserver in seinen Konfigurationsdateien an, sogenannte „Named-Based Virtual Hosts“ einzurichten. Wie das im einzelnen geht, möchte ich hier nicht genauer ausführen. …Diejenigen von Euch, die das gleiche Problem haben, wissen wo von ich hier schreibe…

Um es hier einfach zu halten, gebe ich einen Ausschnitt meiner Webserverkonfiguration zum Besten:

NameVirtualHost *

<VirtualHost *>
ServerName www.jerret.de
ServerAlias xxx.jerret.de
DocumentRoot /srv/www/verzeichnis1
<Directory „/srv/www/verzeichnis1“>
Options FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all
.
.
.
</Directory>
</VirtualHost>

<VirtualHost *>
ServerName www.meine_2te_Domain.de
ServerAlias xxx.
meine_2te_Domain.de
DocumentRoot /srv/www/verzeichnis2
<Directory „/srv/www/verzeichnis2“>
„Andere oder gleiche Anweisungen für Verzeichnisrechte“
</Directory>
</VirtualHost>

Mit dieser Konfiguration versetze ich also meinen Webserver in die Lage Anfragen an www.jerret.de mit den Inhalten aus /srv/www/verzeichnis1 und Anfragen an www.meine_2te_Domain.de mit Inhalten aus /srv/www/verzeichnis2 zu beantworten. Genau so richte ich auch Subdomains ein. Dort steht dann lediglich folgendes:

<VirtualHost *>
ServerName www.fotos.jerret.de
ServerAlias xxx.fotos.jerret.de
DocumentRoot /srv/www/pics
<Directory „/srv/www/pics“>
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

Wie bei jeder Änderung an der Konfiguration des Webservers muss auch hier ein Neustart des Dienstes erfolgen.

So, das waren in meinem Fall alle Änderungen, die ich vornehmen musste, um meine Permalinkstruktur ändern zu können. Egal, was ich vorher gemacht habe, ich hatte immer das Problem, dass ich einen internen Serverfehler verursachte oder mir der Zugriff auf meine Seiten verweigert wurde.

.htaccess

Bei Änderung der Permalinkstruktur wird von WordPress eine Datei erstellt, die erweiterte Verzeichnisrechte defeniert. Diese Datei „.htaccess“ wird im Stammverzeichnis der Worpressinstallation notiert. Hier muss sichergestellt sein, dass WordPress (genauer gesagt, der Webserver) in dieses Verzeichnis (hier verzeichnis1) schreiben darf. Nutzer eines eigenen root Servers wissen wie das geht und ich werde es hier nur kurz beschreiben.

Der Webserver Apache wird unter Linux/Unix als eigener Benutzer geführt, der vom System ähnlich behandelt wird, wie Standarduser. Man kann also diesem User, in der Regel „wwwrun“ explizit Schreibrechte auf Verzeichnisse und Dateien zuweisen. Hier gibt es auch verschiedene Möglichkeiten. Ich Nutze für Verzeichnisse, in denen ausschließlich Webinhalte liegen, folgenden Befehl:

chown -R wwwrun:www /srv/www/verzeichnis1

Dieser Befehl besagt: Übergebe angegebenes Verzeichnis mit allen Unterverzeichnissen und Dateien in das Eigentum des Benutzers „wwwrun“ und ändere entsprechend die Gruppenzugehörigkeit in „www“. Damit ist sichergestellt, dass WordPress im verzeichnis1 schreiben darf.

Anwendung des WordPress Plugins

Dazu verweise ich wieder auf den Autor des Plugins. Dort ist hinreichend Beschrieben, wie mit dem Plugin zu verfahren ist.

Ich hoffe, ich konnte helfen…

JerretPermalinks in WordPress ändern
mehr lesen

mod_rewrite – aktivieren und überprüfen

3 comments

mod_rewrite Aktivieren

apache_logoDie Aufgabe des Moduls „mod_rewrite“ ist, URL´s so umzuformen, dass URL´s lesbar werden. Dieses Modul ist z.B. bei WordPress zwingend erforderlich, wenn man nicht mit der voreingestellten Permalinkstruktur arbeiten möchte.

Die einfachste Art das Modul zu aktivieren ist einen Eintrag in der Datei /etc/sysconfig/apache2 vorzunehmen und den Webserver neu zu starten. Dazu musst Du Dir fogende Zeile in dieser Datei suchen:

APACHE_MODULES=“access actions alias auth auth_dbm autoindex cgi dir env expires include log_config mime negotiation set envif ssl suexec userdir php5 rewrite

Bei mir steht diese Zeile in Zeile 79. Am Ende (die Position ist aber egal) der Zeile, vor den schließenden Anführungszeichen („) habe ich das Word rewrite notiert. Jetzt wird der Apache angewiesen, bei einem Neustart des Services, das Modul „mod_rewrite“ zu laden.

Webserver Neustart

Ein Neustart des Webservers ist sehr leicht. Dazu gibt es 2 Befehle (Es gibt noch mehr Möglichkeite, gehe hier jedoch nicht darauf ein…). Je nach Präferenz kannst Du Dir einen davon aussuchen. Jeder dieser Befehle muss mit root-Rechten ausgeführt werden:

  1. rcapache2 restart -> (Suse Linux typisch)
  2. /etc/init.d/apache2 restart ->(Standard)

Status von mod_rewrite überprüfen

Nach dem Neustart, ist es natürlich wichtig zu wissen, ob das neue Modul vom Webserver geladen wurde. Ein Blick in die Datei /etc/apache2/sysconfig.d wird dabei Helfen. Die Stelle an der Du das rewrite-Modul in /etc/sysconfig/apache2 in der Zeile für APACHE_MODULES notiert hast, bestimmt auch die Reihenfolge der vom Webserver zu ladenen Module. Folgerichtig müsste jetzt bei der Überprüfung der angegebenen Datei ersichtlich sein, dass das rewrite-Modul als letztes geladen wurde.


LoadModule setenvif_module /usr/lib/apache2-prefork/mod_setenvif.so
LoadModule ssl_module /usr/lib/apache2-prefork/mod_ssl.so
LoadModule suexec_module /usr/lib/apache2-prefork/mod_suexec.so
LoadModule userdir_module /usr/lib/apache2-prefork/mod_userdir.so
LoadModule php5_module /usr/lib/apache2/libphp5.so

LoadModule rewrite_module /usr/lib/apache2-prefork/mod_rewrite.so

Ist mod_rewrite aufgeführt, dann ist das Modul richtig geladen.

Jerretmod_rewrite – aktivieren und überprüfen
mehr lesen

Permalinkstruktur angepasst

No comments

Ich habe es endlich geschafft! Meine URL´s sind jetzt aussagekräftig. Wo vorher

  • http://jerret.de/?p=109

stand, steht jetzt

  • http://jerret.de/fotografie/tiefpassfilter-reinigen.html

Diese Arbeit hat mich viel Googelei und Nerven gekostet! Bin ich froh, dass ich eine echte Testumgebung habe um rumzuspielen. Notalls Datenbank löschen und Datenbankbackup von Jerret.de einspielen.

Trotz hunderter Tutorials, habe ich keine richtige lösung für genau meine Serverumgebung gefunden. Schlussendlich habe ich jedoch einen Weg gefunden.

Ich hoffe, es hat sich auch für Euch gelohnt. Ich bin jedenfalls sehr zufrieden.

JerretPermalinkstruktur angepasst
mehr lesen

St. Peter-Ording

No comments

Viele, die mich heute zum ersten Mal nach dem Pfingswochenende wiedergesehen haben, haben sofort bemerkt, dass ich in der Sonne unterwegs war. Natürlich hatte ich meine Nikon D80 immer dabei. Ich wollte schon immer mal ein schönes Bild von einem Sonnuntergang machen und ich glaube, es ist mir nun gelungen. Oder was haltet Ihr von folgendem Foto:

Pfahlbau St. Peter Ording

Pfahlbau St. Peter Ording

JerretSt. Peter-Ording
mehr lesen

Tiefpassfilter reinigen

1 comment

Der Winter ist Vergangenheit und ich habe meine Nikon D80 endlich mal wieder ausgeführt. Natürlich habe ich einige tolle Bilder gemacht. Welch Ärger, dass ich recht viel nacharbeiten musste. Über Winter hat sich eine Menge Dreck auf meinem Tiefpassfilter angesammelt. So musste ich einige dunkle Flecken auf den Bildern mit Photoshop wegarbeiten.

Bisher war der Tiefpassfilter ein Tabu für mich. Jetzt habe ich mich aber doch an den Tiefpassfilter getraut. Den Tiefpassfilter von losem Staub zu befreien ist ja kein Problem, aber was macht man, wenn das Säubern mit Druckluft nicht funktioniert?

Eine Anleitung, wie man Staub auf seinem Tiefpassfilter elektronisch sichtbar macht, kann man im Blog von Familie Kaden nachlesen. Allerdings kann ich mir nicht vorstellen, dass dieses Verfahren nützlich ist. Denn der Dreck muss ja vom Tiefpassfilter runter.

Ich habe mich eines Wattestäbchens bedient. Die Reinigung habe ich natürlich mit äußerster Vorsicht vorgenommen. Folgende Schritte haben bei mir zum gewünschten Erfolg geführt:

  1. Nicht ausgefranzte Wattestäbchen besorgen,
  2. Wattestäbchen von eventuellem Staub befreien,
  3. Staubkörner versuchen mit leichtem Antupfen aufzusammeln,
  4. Bei Staubkörnern, die sich nicht aufsammeln lassen, mit dem Wattestäbchen vom Tiefpassfilter wischen.

Der Tiefpassfilter ist hoch empfindlich. Zu großer Druck kann ihn beschädigen. Ich weise ausdrücklich darauf hin, dass ich für Schäden an Kameras nicht hafte, soll bei Nachahmung etwas schief gehen.

Ich kann sagen, dass ich mit dieser Methode sehr erfolgreich war. Allerdings war mein Tiefpassfilter noch keinen extremen Bedingungen ausgesetzt. Es war kein „Schmierfilm“ oder andere hartnäckige Verschmutzung vorhanden.

Sollten solche Verschmutzungen vorhanden sein, empfehle ich jedem, die Reinigung vom Fachhandel vornehmen zu lassen.

JerretTiefpassfilter reinigen
mehr lesen

TV auf dem EEE-PC

1 comment

Zattoo

Das Zauberwort ist Zattoo. Ich würde es ohne Mathias Penz gar nicht kennen. Er kam heute auf mich zu, schnappte sich meinen Eee-PC und öffnete eine Webseite.

„Kennst Du schon Zattoo? …“ Und schon waren wir im Gespräch. Er erklärte mir kurz, wobei es sich bei diesem Tool handelt. Ganz nebenbei habe ich das Tool auf dem Eee-PC installiert. Die Installation ist für einen „Linuxer“ eigentlich kein Problem.

Zattoo ist eine lokale Anwendung, die per Peer to Peer-Verfahren das ausgestrahlte TV-Programm zwischen den Peers verteilt. Hierzu ist ein Account bei Zattoo erforderlich. Es werden kaum persönliche Daten benötigt, lediglich eine E-Mailadresse und die Angabe des Geburtsjahres, des Geschlechtes und der PLZ sind gefordert.

Ist der Account angelegt und die Anwendung auf dem Eee-PC installiert, kann es auch losgehen. Anwendung öffnen, einloggen und das aktuelle TV-Programm mit einer nur sehr minimalen Verzögerung sehen.

Zugegeben, wenn Zattoo auf dem Eee-Pc läuft, dann stößt der Kleine an seine Grenzen. Andere Programme zu bedienen wird dann echt zu einem Geduldspiel.

Einfach genial. Keine TV-Karte im Gerät erforderlich und dennoch sehr hohe Performance. Diese Anwendung ist übrigens nicht nur für Linux erhältlich, sondern auch für Windows und Mac.

have fun!

JerretTV auf dem EEE-PC
mehr lesen

Widgetbox – Pimp your Blog

No comments

widgetbox.jpg

Widgetbox ist eine einfache und geniale Sache, um seinen Blog oder seine Webseite ordentlich zu pimpen. Ich habe es getestet und bin fast begeistert. Ich bin deshalb nur fast begeistert, da der Nutzen für den Anwender geringer scheint, als desjenigen, der das Widget zur verfügung stellt. Aber das ist nur ein subjektiver Eindruck, den ich beim Testen bekommen habe.

Viel mehr hat mich die Tatsache gestört, dass viele Widgets sich nicht optimal an das eigene Layout anpassen lassen. Klar, eine gewisse Flexibilität bringen die meisten Widgets mit, aber lange nicht alle und nicht in ausreichender Form.

Ein weiterer Nachteil von Widgets, die über Widgetbox bezogen werden können, kann deren Abhängigkeit von verschiedenen Services sein. Ich will das auch kurz erläutern.

Genau wie bei anderen „Sachen“, die man auf seiner Webseite einbindet (z.B. Werbung) bekommt man vom Anbieter Quellcode, der in die Webseite eingebunden werden muss. Bei nicht statischen Inhalten ist diese Technik natürlich sehr beliebt und wartungsarm. Einmal eingebunden und bei jedem Seitenaufruf wird der Content unter Umständen automatisch geändert.

Aber genau darin liegt das Problem. Jeder, der im sich Internet ein wenig auskennt oder sogar einen eigenen Blog betreibt, weiß wie viele Informationen zwischen verschiedensten Webseiten ausgetauscht werden können. Nun… Stellt man sich vor, jemand implementiert sehr viele Widgets auf seiner Seite, dann kann man sich eben so gut vorstellen, wie viel Traffic generiert wird und die damit verbundene Wartezeit für den Seitenaufbau sich schnell vervielfacht.

Wenn nun auch noch der Webservice, der das Widget mit Content bedient ausgefallen oder nicht erreichbar ist, kommt es zum Gau. Die Webseite wird unter Umständen nicht fertiggeladen. Der Besucher springt ab und kommt auch nicht wieder.

Tipp:
Nur Widgets einbauen, die mit dem eigentlichen Content der Webseite nicht direkt in Verbindung stehen. Außderdem, alles was vom eigenen Server kommt ist am sichersten und schnellsten.

JerretWidgetbox – Pimp your Blog
mehr lesen

MySQL – automatischer Restart

1 comment

Wie wichtig die Datenbank für eine Webseiten sein kann, merkt man oft erst dann, wenn Die Datenbank nicht mehr zur Verfügung steht. Aus aktuellem Anlass habe ich mir die mühe gemacht eine Lösung zu suchen, die ein MySQL-Datenbanksystem automatisch startet, sollte das Datenbanksystem mal down sein.

Die Lösung ist ein einfaches Script, welches über einen Cronjob zeitlich gesteuert wird.

Das Script:

Natürlich muss es noch angpasst werden. Das Script leistet im Groben folgendes:

  • Prüfung, ob Datenbankserver läuft
  • wenn nicht, Datenbankserver starten und Status-Mail an EMAILID
  • sonst, tue nichts

#!/bin/bash
#————————————————————————–
# Shell script to restart MySQL server if it is killed or not working
# due to ANY causes.
#————————————————————————–
# mysql root/admin username
MUSER=“root“
# mysql admin/root password
MPASS=“hier passwort eintragen…“
# mysql server hostname
MHOST=“localhost“
#Shell script to start MySQL server i.e. path to MySQL daemon start/stop script.
# Debain uses following script, need to setup this according to your UNIX/Linux/BSD OS.
MSTART=“/etc/init.d/mysql start“
# Email ID to send notification
EMAILID=“mustermann@test.de“
# path to mail program
MAILCMD=“$(which mail)“
# path mysqladmin
MADMIN=“$(which mysqladmin)“

#### DO NOT CHANGE anything BELOW ####
MAILMESSAGE=“/tmp/mysql.fail.$$“

# see if MySQL server is alive or not
# 2&1 could be better but i would like to keep it simple and easy to
# understand stuff
$MADMIN -h $MHOST -u $MUSER -p${MPASS} ping 2>/dev/null 1>/dev/null
if [ $? -ne 0 ]; then
echo „“ >$MAILMESSAGE
echo „Error: MySQL Server is not running/responding ping request“>>$MAILMESSAGE
echo „Hostname: $(hostname)“ >>$MAILMESSAGE
echo „Date & Time: $(date)“ >>$MAILMESSAGE
# try to start mysql
$MSTART>/dev/null
# see if it is started or not
o=$(ps cax | grep -c ‚ mysqld$‘)
if [ $o -eq 1 ]; then
sMess=“MySQL Server MySQL server successfully restarted“
else
sMess=“MySQL server FAILED to restart“
fi
# Email status too
echo „Current Status: $sMess“ >>$MAILMESSAGE
echo „“ >>$MAILMESSAGE
echo „*** This email generated by $(basename $0) shell script ***“ >>$MAILMESSAGE
echo „*** Please don’t reply this email, this is just notification email ***“ >>$MAILMESSAGE
# send email
$MAILCMD -s „MySQL server“ $EMAILID < $MAILMESSAGE
else # MySQL is running and do nothing
:
fi
# remove file
rm -f $MAILMESSAGE

Download:

mysql_restart_if_down.sh: Download

Der Cronjob:

Ein Cronjob ist eigentlich nichts anderes als ein Zeitlich definiertes Ereignis. Im Allemeinen wird dieser Begriff unter UNIX/LINUX verwendet. Ich kann also Befehle zu regelmäßig wiederkehrenden Zeitpunkten ausführen. Dabei ist es egal, ob ich nur einen einzelnen Systembefehl ausführe oder ein komplexes Shellscript starte.

Ein Cronjob wird durch den Cron Deamon gestartet. Damit der Deamon weiß, wann er was machen soll, muss man ihm das in der Crontab mitteilen. Die Crontab hat folgenden aufbau und ist i.d.R unter /etc/crontab zu finden:

# (Cron version -- $ID: ... 1.5 2000/05/27 12:05:33 work Exp $)
SHELL=/bin/sh
PATH=/usr/bin:/usr/sbin:/sbin:/bin

#min  hour  day  month  dow  user  command
# Command jede Minute ausführen:
 *     *     *     *     *   root  <todo>

# Jeden Tag um 22.00 h alles im Verzeichnis /public
# incl. Unterverzeichnisse löschen:
 0    22     *     *     *  pingu  rm -r /public/*

# delpub jeden Sa. um 22:00 h aufrufen
 0    22     *     *     6   root  /root/bin/delpub

# Befehl oder Script alle 5 min ausführen
*/5    *     *     *     *   root  <todo>

# mail_poll alle 2 Stunden ausführen
 00   */2    *     *     *  root  /usr/local/bin/mail_poll
Quelle: linuxhilfen.org

Sofern das Script abgespeichert ist und die Crontab angepasst, muss nur noch der Deamon neu gestartet werden.

Das ist es auch schon.

JerretMySQL – automatischer Restart
mehr lesen