# redhat und mysql



## mr_d2254 (17. April 2002)

weiss wer wie man bei dem vorinstalliertem Apache vom redhat 7.2 mysql (welches ich installiert hab) anschaltet. Diesen configuration shells script hat des irgendwie nich.


----------



## SirSalomon (17. April 2002)

*mysql und andere dienste starten*

Hi,

wiedermal ich  

Du kannst bei der RedHat die Dienste mit dem Setup-Programm automatisieren. Soll heissen, bei dem Programm (als root in einer Shell ausführen) kannst Du festlegen, welche Dienste automatisch beim hochfahren gestartet werden sollen.

Unter welchem INIT der Dienst gestartet wird kannst Du am einfachsten mit "linuxconf" feststellen. Schau dort einfach mal nach Systemdienste. Da solltest Du dann bei dem mysql-Dienst die INITs 3, 4 und 5 aktivieren.

Wenn Du dann noch mysql richtig installiert hast (sollte bei den RPM-Paketen kein Problem sein  ) wird er spätestens beim nächsten Neustart des System automatisch hochgefahren.


----------



## mr_d2254 (17. April 2002)

mysql hab ich installiert und es funzt auch... aber apache erkennts nich...


----------



## Dennis Wronka (19. April 2002)

Daß der Apache den MySQL-Server nicht erkennt ist nichts ungewöhnliches.
Das liegt daran, daß die beiden direkt überhaupt nichts miteinander zu schaffen haben, sondern die Datenbank-Anbindung über ein PlugIn wie z.B. PHP (http://www.php.net) läuft.

Um beim Beispiel zu bleiben (ist auch einfacher für mich, da ich selbst mit PHP rumstricke) mußt Du also in Deinem PHP-Scripts die Datenbank anbinden und kannst dann darüber die Datenbank auslesen, bearbeiten, was auch immer.

Das geht wahrscheinlich auch ohne PHP (wäre ja sonst irgendwie albern), aber was man dann dafür braucht (CGI, Java, ???) weiss ich nicht.

Aber die Lösung mit dem PHP ist mittlerweile auch ganz ordentlich verbreitet und so bekommt man auch überall Tutorials und Support.

Check mal das LAMP-Tutorial (LAMP -> Linux Apache MySQL PHP) von Digi, kein Plan ob's komplett ist, aber könnte vielleicht helfen.

LAMP-Tut. -> http://www.tutorials.de/forum/showthread.php?threadid=7822


----------



## mr_d2254 (19. April 2002)

ich hab auch schon im lamp tut nachgekuckt und dort gibts ne apache configure file, also "./configure --with mysql" oder so.

Ich hab aber so ne configure file nich und weiss nich wo ich des sonst eintippen soll... ich hab auch des spezielle mysql packet für red hat genommen... ich weiss net obs da nen unterschied gibt...


----------



## Dennis Wronka (19. April 2002)

Hab grad auch mal in das Tutorial geguckt (kann ja manchmal hilfreich sein wenn man selbst weiss was man anderen empfiehlt) und denke, daß ich des Rätsels Lösung nun gefunden hab.

Die Option --with-mysql=... wird bei der ./configure von PHP, nicht bei der ./configure vom Apache, da der, wie bereits erwähnt, direkt nichts mit MySQL am Hut hat.

Mit Deinem Apache und Deinem MySQL wird also wohl alles in Ordnung sein, jetzt solltest Du nur noch gucken, daß Du PHP installierst, und zwar brauchst Du eine Version die das PlugIn für den Apache mitinstalliert und sie sollte natürlich MySQL-Unterstützung bieten.

Wie das per RPM von statten geht und wo Du das passende RPM für Deine Ansprüche findest (versuch doch einfach mal http://www.php.net) kann ich Dir leider nicht sagen.


----------



## mr_d2254 (19. April 2002)

PHP hab ich schon längst installiert... ich brauch eigendlich nur das mysql.so für 4.0.6 wo kriegt man des?

PS: im phpinfo() steht auch "... 'without-mysql' ..." wechselt das dann automatisch zu with-mysql wenn ich den socket hab?

danke für die hilfe


----------



## SirSalomon (19. April 2002)

*mysql, apache und php*

Also mein Freund,

um mal kurz etwas darzustellen. Weder PHP noch Apache noch mysql haben etwas mit ein ander zutun. Soll heissen, Alle Programme sind in sich abgeschlossen und unabhängig.

Jetzt gibt es aber Schnittstellen die auf die anderen Programme zugeschnitten sind. So bietet PHP mit seinen Befehlen die Möglichkeit, alles als HTML-Code anzuzeigen. Das funktioniert natürlich nur, wenn Apache auch weiss, dass es PHP verarbeiten soll (den technischen Hintergrund lass ich jetzt mal bewust raus, würde dem Rahmen hier sprengen). 

Nun kannst Du über PHP auch die SQL-Datenbank ansprechen, resp. abfragen. Auch das geht nur, wenn PHP etwas von dem SQL-Server weiss. Der SQL-Server als sochles ist dahingehend fein raus, er stellt nur Ergebnisse bereit.

Um jetzt also Deine Konfiguration zu prüfen, versuche einfach mal PHPMYADMIN. Das ist ein Programm, dass Dir eine Schnittstelle zum SQL-Server bietet und diese dann unter dem Apache als HTML-Ausgabe präsentiert. Und das ganze läuft als PHP-Programm.

Das wichtige dabei ist jetzt erstmal, missachte einfach mal alle Konfigurationen, die Dir ein Programm bietet. Wenn Du die jeweiligen Programme aus dem RedHat als RPM installiert hast, stimmt eh schon alles und Du brauchst nichts ändern.

Warum also einen Motor bearbeiten, wenn er läuft?

Probier's einfach mal aus und berichte dann hier über Deine Ergebnisse...


----------



## mr_d2254 (20. April 2002)

ich phpmyadmin hab ich auch schon längst installiert und es sagt:
_cannot load MySQL extension,
please check PHP Configuration._

das problem is ja dass red hat kein mysql mit im packet hatte, nur postgresql, welches ich auch am anfang genutzt hab, auch mit pgmyadmin, etc. Aber jetzt will ich mysql, desswegen hab ichs mir von mysql.com runtergeladen und auf dem linux installiert. Davor hatte ich Mandrake, welchen mysql im packet hatte und die haben ne RMP die "php-mysql-4.1.2-2mdk.i586" heisst welche den mysql.so enthält, welcher, laut beschreibung mysql und php verbinden... genau dass was ich will. Ich kann die datei aber nicht benutzen weil die für php 4.1.2 und die php version von red hat war 4.0.6 (Ich hab auch schon versucht die datei zu benutzen).

Ich würd ja redhats apache und php deinstallieren und dafür die neusten versionen selber installieren (wobei ich mysql mit installiere (wie im LAMP tut)), aber red hat hat so ein schönen apache configurator, welchen ich weiterhin benutzen will (und ich weiss nich ober er mit der nicht redhat version weiterhin läuft).


----------



## SirSalomon (20. April 2002)

*PHP, Apache und mysql*

erstmal  natürlich ist bei dem RedHat-System auch mysql dabei. Du hast es nur nicht ausgewählt. Wenn Du das machen möchtest, ist der einfachste Weg, der, dass Du die Install-CD einlegt, und das bestehende System aktualisierst.

Bei dieser Prozedur kannst Du zum einen die bestehende Konfiguration behalten, zum anderen kannst Du aber auch "neue" Pakete installieren. Da wären dann alle zu mysql, also den Server, den Client, das Dev-Paket und noch eines (wiess jetzt aber nicht wie das heisst). Wichtiger ist dabei eigentlich, dass Du die PHP-Erweiterung für mysql installierst (vorher die für Postgres deinstallieren).

Klappt eigentlich alles ganz einfach und ohne Probleme. Wenn Du Dir an einem Punkt nicht sicher bist, brich das lieber ab und fang von vorn wieder an.

Aber eines ist sicher, es geht. Ich habe das hier selber noch auf meinem Linux-Server erfolgreich gemacht (den mysql nachinstalliert)...


----------



## mr_d2254 (20. April 2002)

Also als ich dass erste mal deinen beitrag durchgelesen hab, war ich nich sehr erfreut, weil du mich ein bisschen dümmer darstellst als ich eigendlich bin 

Ich wollts dir eigendlich schon sagen als du mir mit der "einfach mal mit phpmyadmin auspropieren" idee kammst, aber ich hab mich zurückgehalten. Diesmal kam ich mir auch ein bisschen doof vor, weil du meintest ich sollte mir einfach das packet von der install cd hohlen. Da ich ja schon sehr vertraut mit RedHat's package manager war und ihn schon zich mal nach mysql durchsucht hatte (ohne erfolg). Als ich aber dann die CD einlegte um mal manuell durch die datein zu browser stellte ich fest es gibt doch mysql packete, die nicht im Package Manager gelistet waren. Desswegen will ich mich entschuldigen und bedanken! Ich hatte davor Mandrake, wessen Package Manager auch *nicht*-installierte RPM's anzeigte (die noch auf der CD waren).

Abschliessend will ich sagen: ******e!!! Da kram ich wochenland durch andere linux dist. um an ein php-mysql rpm zu gelangen und dann versteckt sich das teil mitten auf der CD. RedHat macht auch werbung für postgre, desswegen dachte ich die hätten ne art vertrag mit denen, dass da keine konkurenten auf die redhat dist kommen.


PS: Danke!


----------



## SirSalomon (23. April 2002)

*redhat und rpm-pakete*

Hi,

uff... mal drei Tage nicht im Netz und schon kocht der Bär  

Aber ok, ich arbeite mich durch. Schön, dass es bei Dir geklappt hat. Ich habe Dir das genau aus dem Grund geschrieben, eben weil der RPM-Manager von RedHat nur Pakete listet, die auch installiert sind. Ein Bug? Nö, nicht wirklich. Man kann Pakete über einen Menüpunkt nachträglich suchen und installieren. Nur wird der Menüpunkt nur zu gern übersehen, passiert mir ständig  .

Aber wie gesagt, ist schön, wenn jetzt bei Dir erstmal alles klappt. Ach, vielleicht noch ein Hinweis: Wenn Du Pakete suchen willst, kannst Du das auch im Internet machen, klappt gut und da wird Dir dann auch angezeigt, wiue die Abhängigkeiten aussehen.

Der Link ist recht einfach:

RPM-Find; Paketsuche im Internet 

Ist immer zu empfehlen, ansonsten ist folgender auch ganz nett und hilfreich:

Hier ist OpenSource groß!!!! 

So und nun weiterhin viel Spass beim Linuxen 

"Linux, the biggest Adventure of the World"


----------



## mr_d2254 (23. April 2002)

danke! 

weisst du was du mir noch verraten könntest... warum er die Virtual Interfaces, die ich mit Webmin mache um mehr IP Adressen zu haben nicht sichert vor einem shut down. Weil ich muss die bei bei jeden neu start neu einrichten... nich cool


----------



## SirSalomon (23. April 2002)

Geht recht einfach 

erstelle im Verzeichnis "/etc/sysconfig/network-script" eine Datei mit dem Namen "ifcfg-eth0:0" und den Rechten 644 erstellen (geht mit "touch ifcfg-eth0:0").

In diese Datei schreibst Du folgenden Inhalt:

BROADCAST=""
NETMASK=""
DEVICE=eth0:0
BOOTPROTO=dhcp
ONBOOT=yes
NETWORK=""
IPADDR=""

Mit dieser Datei wird beim nächsten Starten ein Interface "eth0:0" angelegt und die Adresse via DHCP-Server zugewiesen.

Wenn Du kein DHCP-Server hast, kannst Du einfach die passenden Werte in NETMASK, NETWORK und IPADDR eintragen. Denk dann aber dran, dann  BOOTPROTO="none" einzutragen.

Damit solltest Du auch das Problem behoben haben.


----------



## SirSalomon (23. April 2002)

Noch eine Idee 

Schau Dir mal WEBMIN an, da geht das auch. einfach unter Networt und dann STARTUP schauen. Dort kannst Du dann die Netzwerkschnittstellen anlegen.


----------



## mr_d2254 (23. April 2002)

ich find da nichts unter Hardware > Network Configuration

wo genau soll da STARTUP sein? und wie heisst die sache die meine network config speichert... was ich dann beim startup aktivieren soll?


----------



## SirSalomon (23. April 2002)

Also, beim Webmin 0.95 (?) ist unter Hardware ein Eintrag mit Netzwerkkonfiguration. Da kannst Du auf Netzwerkschnittstellen gehen und siehst die momentane Konfiguration der Schnittstellen.

Jetzt kannst Du da unten eine neue Schnittstelle hinzufügen, aberf unterhalb von "Startup".


----------



## mr_d2254 (23. April 2002)

aaaaaaaaaaaaah soooooooooo mensch... ich sollte mal n bisschen mehr lesen. Da steht ja sogar active now und active at boot...

Nagut... muss ich schon wieder danke sagen... ääh wenn de grad dabei bist... ich hab da so ein problem mit meinem apache und zwar steuert er nicht immer automatisch index.* an... also wenn ich zu http://200.0.0.1 geh dann gibt er mir nen permission denied fehler und sagt ich darf / nicht betreten... aber wenn ich zu /index.php geh dann gehts. Wie mach ich denn das, dass er die automatisch ansteuert?


----------

