PHP, MySQL, phpMyAdmin ja Debian
|
|
siansaksa
Member
1 tuotearvio
|
4. elokuuta 2006 @ 06:44 |
Linkki tähän viestiin
|
Kun meen ekan kerran phpMyAdminiin ensimmäisen kerran asennuksen jälkeen, se kysyy jo salasanaa. En muista, konfiguroitiinko se jo asennuksessa, mutta jos niin tapahtui, niin tiedän sen. Kun yritän logata sisään, ni jäkättää tällästä:
"#2002 - The server is not responding (or the local MySQL server's socket is not correctly configured)
Todennäköisesti se onkin konfiguroitu väärin, mutta en osaa sitä konfiguroida oikein. Mitä teen?
|
Senior Member
|
4. elokuuta 2006 @ 07:47 |
Linkki tähän viestiin
|
phpmyadminin hakemistossa on sen conffitiedosto joka pitää muistaakseni käsin käydä editoimassa. tiedosto taisi olla nimeltään config.inc.php
Siellä on semmoinen kohta kuin "Server(s) Configuration". itselläni on seuraavat rivit siellä.
nyt jos et ole määritellyt tuota porttia oikein ja tuossa 'socket' kohdassa on jotain niin silloin käytetään erikoista *nix ominausuutta jossa mysql-palvelimeen muodostetaan yhteys kiintolevyllä olevan tiedoston kautta, eikä verkkoyhteytenä. Minne tuo tiedosto sitten jemmataan on distrokohtainen asia (tai kun mysql-palvelinta vaikka käännät niin sen voi määrät) joten joudut sen paikan ehkä etsimään.
voithan tietenkin napata sen 'socket' rivillä olevan arvon tyhjäksi niin se pitäisi toimia ihan yhtä hyvin.
Quote: $cfg['Servers'][$i]['host'] = 'localhost'; // MySQL hostname or IP address
$cfg['Servers'][$i]['port'] = ''; // MySQL port - leave blank for default port
$cfg['Servers'][$i]['socket'] = '/var/mysql/mysql4.socket'; // Path to the socket - leave blank for d$
$cfg['Servers'][$i]['connect_type'] = 'socket'; // How to connect to MySQL server ('tcp' or 'socket')
$cfg['Servers'][$i]['extension'] = 'mysql'; // The php MySQL extension to use ('mysql' or 'mysqli')
$cfg['Servers'][$i]['compress'] = FALSE; // Use compressed protocol for the MySQL connection
.
.
.
.
$cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method (config, http or cookie based)?
$cfg['Servers'][$i]['user'] = 'root'; // MySQL user
$cfg['Servers'][$i]['password'] = 'salasana'; // MySQL password (only needed
|
siansaksa
Member
1 tuotearvio
|
4. elokuuta 2006 @ 08:59 |
Linkki tähän viestiin
|
Muuten varmaankin ihan pätevä ohje, mutta miten tota filuu päsee muuttelee root:ina, ku valittaa ettei voi tehä backup:ia.
|
Senior Member
|
4. elokuuta 2006 @ 09:18 |
Linkki tähän viestiin
|
debianin ohjeita kannattaisi lukea. Jos konsolissa (terminaalissa, shellissä ja mitäniitämuitanimiäon) kirjoittelee komennot:
su ja sitten syöttää rootin salasanan
nano /polku/jonnekkin/config.inc.php
en kyllä muista varmaksi oliko debianissa tuo rootin tunnus otettu pois käytöstä, niinkuin ubuntussa.. mutta siinä tapauksessa lyö konsoliin komento sudo nano /polku/jonnekkin/config.inc.php ja kirjoita OMA salasanasi kun sitä kysellään.
Viestiä on muokattu lähettämisen jälkeen. Viimeisin muokkaus 4. elokuuta 2006 @ 09:25
|
siansaksa
Member
1 tuotearvio
|
4. elokuuta 2006 @ 09:27 |
Linkki tähän viestiin
|
Quote: debianin ohjeita kannattaisi lukea. Jos konsolissa (terminaalissa, shellissä ja mitäniitämuitanimiäon) kirjoittelee komennot:
su ja sitten syöttää rootin salasanan
nano /polku/jonnekkin/config.inc.php
en kyllä muista varmaksi oliko debianissa tuo rootin tunnus otettu pois käytöstä, niinkuin ubuntussa.. mutta siinä tapauksessa lyö konsoliin komento sudo nano /polku/jonnekkin/config.inc.php ja kirjoita OMA salasanasi kun sitä kysellään.
Lukisin jos tietäisin, mistä niitä etsisin.
|
Senior Member
|
4. elokuuta 2006 @ 09:31 |
Linkki tähän viestiin
|
|
siansaksa
Member
1 tuotearvio
|
4. elokuuta 2006 @ 09:49 |
Linkki tähän viestiin
|
Napsasin socket-kohdan tyhjäks. Ja muutenki täydentelin serveriasetukset, mutta ei tunnu pelaavan. Ymmärtääkseni php-tiedostojen muutosten takia koko konetta ei tarvitsisi bootata, ellei tiedostoa lueta vain käynnistyksen yhteydessä. Miten tässä tapauksessa? Uudelleenkäynnistus?
Viestiä on muokattu lähettämisen jälkeen. Viimeisin muokkaus 4. elokuuta 2006 @ 09:52
|
Senior Member
|
4. elokuuta 2006 @ 10:03 |
Linkki tähän viestiin
|
Sen config.inc.php -tiedoston editointi ei vaikuta muuhun kuin sen phpmyadminin toimintaan. Apache jatkaa toimimistaan itsenäisesti kuten myös mysql. Eipä tuota linuxia tarvitse buuttailla kuin Kernelin vaihdo yhteydessä jos hommat oikein hoidetaan.
Itse yrittäisin etsiä sen MySQL:n käyttämän socket-tiedoston. Taas terminaalia auki ja sitten su tilaan, komentoa find /var -print |grep socket ja katsoo mikä viittaa MySQL:ään. Itselläni löytyi seuraavaa ja varmaan arvaat minkä minä sinne phpmyadminin config.inc.php -tiedostoon laitan :)
Quote: root@lalala:~# find /var -print |grep socket
/var/run/acpid.socket
/var/mysql/mysql4.socket
|
siansaksa
Member
1 tuotearvio
|
4. elokuuta 2006 @ 10:18 |
Linkki tähän viestiin
|
Sulla on noin selkeetä. Mul löyty seuraavat:
/var/run/dbus/system_bus_socket
/var/run/dirmngr/socket
Missä vika?
|
Senior Member
|
4. elokuuta 2006 @ 10:30 |
Linkki tähän viestiin
|
ahaa.. debianiassa tuo socket-tiedosto onkin nimeltään mysqld.sock, joka on taas näitä distrokohtaisia juttuja.
eikun vaan find-komentoa uusiksi: find /var -print |grep mysqld.sock
|
siansaksa
Member
1 tuotearvio
|
4. elokuuta 2006 @ 10:37 |
Linkki tähän viestiin
|
ongelma taisi olla siinä, että menin olettamaan taas olemattomia. Ei ensimmäisenä tule mieleen, että paketti php4-mysql ei sisällä mysql:iä vaan pelkästään jatkopalan PHP:lle.
Toivottavasti se nyt suostuu kiltisti asenumaan ilman turhanpäiväsiä ristiriitoja.
Viestiä on muokattu lähettämisen jälkeen. Viimeisin muokkaus 4. elokuuta 2006 @ 10:54
|
Senior Member
|
4. elokuuta 2006 @ 10:52 |
Linkki tähän viestiin
|
:)
debianilla on jaossa kahta eri versiota mysql:stä. ota vaan toisen paketit. Tuo missä on umero perässä on uudempi 4.1.11 ja tuo jossa ei ole mitään numeroa nimen perässä on 4.0.24
mysql-client-4.1
mysql-common-4.1
mysql-server-4.1
tai
mysql-client
mysql-common
mysql-server
|
siansaksa
Member
1 tuotearvio
|
4. elokuuta 2006 @ 10:59 |
Linkki tähän viestiin
|
Mut minkäs takia molempia paketteja tarjotaan?
|
Senior Member
|
4. elokuuta 2006 @ 11:09 |
Linkki tähän viestiin
|
mysql-clietin mukana ilmeisesti tulee tuo php-mysql-paketin käyttämiä osia. Siinä tulee myös muutamia mysql-tietokantojen hallintatyökaluja
mysql-server on sitten se itse mysql-palvelin joka tarjoaa niitä palveluja clienteille, kuten noille mysql-client paketissa tuleville hallintatyökaluille
mysql-common tuo mukanaan sitten tuon mysql-serverin ja mysql-clientin tarvitsemia konffitiedostoja.
eli tarvitset siis kolme pakettia; Joko nuo 4.1.11-paketit (mysql-common-4.1, mysql-client-4.1 ja mysql-server-4.1) TAI vanhemman 4.0.24 paketit (mysql-common, mysql-client ja mysql-server)
Viestiä on muokattu lähettämisen jälkeen. Viimeisin muokkaus 4. elokuuta 2006 @ 11:12
|
siansaksa
Member
1 tuotearvio
|
4. elokuuta 2006 @ 11:23 |
Linkki tähän viestiin
|
paketit asennettu ja mysqld.sock hakemistomäärityksineen tuolla. Vieläkään ei toimi. Uteliaisuuttani työnsin myös komentoriville tuon mysql-komennon. Virhenumero on sama kuin phpMyAdminillä ja valittaa ettei saa yhteyttä paikalliseen MySQL-serveriin socketin kautta. Mitä seuraavaksi?
Viestiä on muokattu lähettämisen jälkeen. Viimeisin muokkaus 4. elokuuta 2006 @ 11:28
|
Senior Member
|
4. elokuuta 2006 @ 12:16 |
Linkki tähän viestiin
|
onko mysqld jo päällä? Anna rootin oikeuksilla komentoa /etc/init.d/mysqld start
|
siansaksa
Member
1 tuotearvio
|
4. elokuuta 2006 @ 12:38 |
Linkki tähän viestiin
|
"ERROR 2002 (HY000): Can't connect to local MySQL server through socket var/run/mysqld/mysqld.sock" Mitä teen?
|
Senior Member
|
4. elokuuta 2006 @ 13:23 |
Linkki tähän viestiin
|
Quote: ...MySQL server through socket var/run/mysqld/mysqld.sock
Noissa kenoviivoissa pitää olla tarkka: var/run/mysqld/mysqld.sock on ERI paikka kuin /var/run/mysqld/mysqld.sock :)
|
siansaksa
Member
1 tuotearvio
|
5. elokuuta 2006 @ 05:49 |
Linkki tähän viestiin
|
Virheessä saatto tulla kirjotusvirhe, mutta phpMyAdmin on oikein konfiguroitu. Ja toi äskeinen herja tuli, kun yritin sitä mysql:iä käynnistää.
|
Senior Member
|
5. elokuuta 2006 @ 08:19 |
Linkki tähän viestiin
|
no ah prkl.
on itselleni sattunut kirjoitusvirhe (tai oletusvirhe) tuolla ylemmässä postissa, jota en huomannut (tarkistaa?)
Quote: onko mysqld jo päällä? Anna rootin oikeuksilla komentoa /etc/init.d/mysqld start
mysqld:n käynnistys piti olla /etc/init.d/mysql start ilman tuota d-kirjainta :(
Varmista vielä sitten kun olet tuon komennon naputellut että se mysqld on varmasti toiminnassa kirjoittamalla komennon ps aux |grep mysqld siellä pitäisi tulla pari riviä jossa tuo "mysqld"-merkkijono esiintyy. Sitten komenna mysql -u root -p mysql ja syötä mysql:n salasana, mikäli semmoinen on erikseen jo laitettu. Jos saat eteesi mysql> kehoitteen niin mysqld on toiminnassa.
Viestiä on muokattu lähettämisen jälkeen. Viimeisin muokkaus 5. elokuuta 2006 @ 08:24
|
siansaksa
Member
1 tuotearvio
|
8. elokuuta 2006 @ 18:57 |
Linkki tähän viestiin
|
No nyt se sanoo "#1045 - Access denied for user: 'admin@localhost' (Using password: YES)" Mielestäni salasanapuoli on määritelty oikein.
|
Mainos
|
  |
|
Senior Member
|
11. elokuuta 2006 @ 08:45 |
Linkki tähän viestiin
|
nyt on homma kiinni noista käyttäjä/salasana -hommelista
Viestiä on muokattu lähettämisen jälkeen. Viimeisin muokkaus 11. elokuuta 2006 @ 08:46
|