FinWX siirtymässä WAMP-konfiguraatiosta LAMP-konfiguraatioon

Aloittaja J.Jäntti, maanantai, 16.07.2018, 02:30

« edellinen - seuraava »

0 Jäsenet ja 1 Vieras katselee tätä aihetta.

J.Jäntti

Lainaus käyttäjältä: weatherc - lauantai, 28.07.2018, 10:32
Polku on mahdollisesti väärä.
Itse käytän trial/error-tilanteissa usein echo:a avuksi, eli että se printtaa ulos ongelman eli esim polun jotta näen että mistä se yirttää sitä filua hakea ja sitten katson että onko se edes sinneppäin siitä mitä pitäisi olla. Toki error-logikin kertonee saman asian.
Yksi auttava keino on myös että käyttää aina "koko polkua" tyyliin "/home/web/sivut/" eikä kikkaile "../../"-tyylisillä poluilla.
Kannattaa toki myös muistaa että includessa olevien filujen mahdolliset polut menee sen "ylimmäisen filun mukaan". Eli tässäkin on se fail-safe tyyli tuo "koko polku".

Polku ei minun ymmärrykseni mukaan voi olla väärä. Komento include_once "init.php"; on niin ikään ensimmäinen include-komento kaikissa skripteissä, jotka tarvitsevat sääasemakohtaisia variableja.
/res/-hakemistossa aina majaillut wxcache.php osaa hakea jollain mystisellä kikalla init.php:n oikeasta osoitteesta, vaikka sille ei tarjoa polkua lainkaan, eikä sitä voikaan, koska init.php on sääasemakohtainen.
Homma toimii niin pitkään, kunnes siirrän nuo .php-filut /res/-hakemistoon ja laitan IFramejen osoitukset index.html-filussa osoittamaan sinne (on pakko, tai koko sivu on yhtä HTTP 404-juhlaa). Oli polku ../../ -tyylinen tai absoluuttinen, sillä ei ole vaikutusta ja homma tyssää kasaan warningeja, jossa PHP ei vain löydä init.php-filua luettavaksi. Se jopa hakee sitä sieltä, mistä minä olen php.ini:ssä määritellyt niitä includella hakemaan. include_once-komento löytyy myös index.html:n sisältä, leivottuna <?php ?>-tagien sisälle, jotta se osaa lukea dynamiikkaa varten oikeat variablet init.php:sta ja käyttää niitä sivun näyttämisessä.

Jokin pääni sisällä on aamupäivän tuntien aikana naputellut, että olen saattanut sotkea asioita jotenkin suohon käyttämällä surutta include_once:a kaikkeen, kun käytössä olisi myös ihan pelkkä include. Toinen naputus on ollut sellaista, että minun pitäisi jotenkin includettaa ristiin noita filuja, mutta se vaikuttaa epäloogiselta ajatukselta.

Lainaus käyttäjältä: weatherc - lauantai, 28.07.2018, 10:32
Vähemmän filuja-tyyli olisi yksi init.php jota kaikki asemat käyttäisi ja sille kerrottais $variablella että mikä asema kyseessä. Vaatinee pientä uudelleenkoodaamista jos kaikilla on omat init.php:t mutta palkitsinee loppupeleissä vähemäällä "point to fail" ja siinä ettei ole kun yksi init.php jota tarvii tarvittaessa muokata mikä taas helpottaisi ylläpitoa jatkossa.

Sepä kun ei ihan onnistu. init.php on se pääasiallinen filu, joka sääaseman kaikki ominaisuudet sisältää, kuten esim. datahakuosoite, osallisuus eri sääverkkoihin (AWEKAS, WU, jne.) sun muut oleelliset tiedot. Tällä hetkellä asiat, jotka pitäisi saada siirrettyä "yhden filun politiikan" alle ovat nämä:
- camwindow.php (Sääaseman webcam-kuvan näyttöskripti, tukeutuu init.php:hen)
- sundial.php (Sääaseman auringon nousu- ja laskuajat näyttävä skripti, tukeutuu init.php:hen)
- sunposition.php (Auringon sijainti sääasemalla-skripti joka piirtää gd:llä aurinkokäppyrän ja muodostaa kuvan siitä, tukeutuu init.php:hen, välttämätön sunpositionwindow.html:lle)
- wxout.php (Parsitun säädatan näyttöskripti, tukeutuu init.php:hen ja res/-hakemistossa majailevaan wxcache.php:hen)

Sääasemakohtaisiin filuihin, kuuluisivat silloin enää nämä:
- index.html (Sääaseman pääsivu, osoittaa filuihin camwindow.php, sundial.php, sunpositionwindow.html, wxout.php ja yrforecast.php. Tukeutuu init.php:hen)
- init.php (Sääaseman kaiken tiedon sisältävä filu, johon yllä listatut filut ja index.html tukeutuu. Standalone)
- sunpositionwindow.html (Näyttää auringon sijainnin sääasemalla selityksineen. Tukeutuu sunposition.php:hen kuvan hakemiseksi)

Tuosta listasta vain init.php on ainoa, jonka data muuttuu sääaseman mukana.

Periaatteessa yhden filun poliittiikka init.php:lle olisi mahdollinen, mutta silloin kaikkien sääasemien tiedot pitäisi olla joko saman init.php:n sisällä tai sääasemien tiedot pitäisi olla MySQL-kannassa ja se tarvitsisi silloin jonkinlaisen .php-skriptin hakeakseen sääaseman tiedot sieltä, eli minun järjenjuoksulla se tietäisi kahta init.php-ratkaisua. Tämäntyyppistä datan hakua tietokannasta ei ole suunnitteilla.
Juha Jäntti
Foorumin ja sivuston ylläpitäjä
Finland Weather Exchange (FinWX)

http://www.finwx.net/
------------------------------------------
Ukkoskausi avattu Suomessa: --.--.2024
Ukkoskausi avattu Helsingissä: --.--.2024
-------------------------------------------
Ukkospäivälaskuri 2024; Helsinki/Viikinmäki
0 ukkospäivää.
------------------------------------------
X, FinWX:n ylläpidon ilmoitukset
------------------------------------------

weatherc

#21
LainaaPeriaatteessa yhden filun poliittiikka init.php:lle olisi mahdollinen, mutta silloin kaikkien sääasemien tiedot pitäisi olla joko saman init.php:n sisällä tai sääasemien tiedot pitäisi olla MySQL-kannassa ja se tarvitsisi silloin jonkinlaisen .php-skriptin hakeakseen sääaseman tiedot sieltä, eli minun järjenjuoksulla se tietäisi kahta init.php-ratkaisua. Tämäntyyppistä datan hakua tietokannasta ei ole suunnitteilla.

Meinasin just ehdottaa että asematiedot mysliin. Ei siihen kahta init.php:tä tarvita. Ensin haet tiedot myslistä ja sitten jatkat normi init:php:n koodilla.


$sqlcon = mysqli_connect("localhost", $user, $pass, $db);

$q = "SELECT * from `$db`.`ewn_stations` WHERE Netatmo_id = '".$id."';";
   if ($res = mysqli_query($sqlcon, $q)) {
     while ($r = mysqli_fetch_array($res)) {$stnr=$r['ID'];$name = $r['name'];$cou = $r['country'];}
   mysqli_free_result($res);
}

mysqli_close($sqlcon);


(mysqli_connect ja mysqli_close tarvitaan vain kerran, skriptin alussa ja lopussa)

J.Jäntti

Eilen (05.08.2018) ja tänään (06.08.2018) tapahtunutta.

Pienen tauon jälkeen työt LAMP-konfiguraation kimpussa jatkuvat jälleen.
Tällä hetkellä suoritetaan kaikkien FinWX-jäsenasemien migraatiota vanhasta init.php:stä uuteen versioon. Versiovaihdos on verkkaista puuhaa, sillä muutos pitää suorittaa manuaalisesti jokaisen aseman kohdalla, mutta muutos etenee kokonaisuudessaan hyvää vauhtia. Läpikäytyinä on nyt FinWX-jäsenasemat A:sta N:ään ja homma jatkuu huomenna taas.

Samalla, kun sääasemia on käyty läpi, on myös havaittu sääasemia, jotka eivät ole lähettäneet dataa vuoteen tai pidemmän aikaa. Osa asemista on kadonnut domain-nimiään myöten tyystin ja yksi domain-nimi suoritti redirect-toiminnon turkinkieliselle pornosivulle, mikä ei ihan ajatuksena ja FinWX:n luotettavuuden nimissä ole ihan toivottu lopputulos. Tällä hetkellä listalta poistuvia sääasemia on mielialaa huonontavat 17 kappaletta ja lisää on todennäköisesti tulossa, kun asemia tullaan käymään läpi. Arvio on, että lopullinen lukema jää 20 ja 30 välimaastoon.

Kun migraatiotyö on saatu päätökseen, julkistetaan lista poistuvista sääasemista tässä viestiketjussa, jotta sääasemaoperaattorit voivat katsoa, onko heidän asemansa listalla ja mikäli on, suorittaa korjaavia toimenpiteitä ettei asema putoa listalta, kun LAMP-konfiguraatio ottaa ohjat.

TIEDOKSI MYÖS:
Vastoin aiempaa ilmoitusta, kaikille FinWX:n jäsenasemille suoritetaan tästä päivämäärästä alkaen ns. "Feature Freeze".
Tämä tarkoittaa sitä, että kaikki korjauspyynnöt suoritetaan vain uuteen ympäristöön. Vanha FinWX jäädytetään sääasemapäivitysten ja -muutosten osalta kokonaan.
Juha Jäntti
Foorumin ja sivuston ylläpitäjä
Finland Weather Exchange (FinWX)

http://www.finwx.net/
------------------------------------------
Ukkoskausi avattu Suomessa: --.--.2024
Ukkoskausi avattu Helsingissä: --.--.2024
-------------------------------------------
Ukkospäivälaskuri 2024; Helsinki/Viikinmäki
0 ukkospäivää.
------------------------------------------
X, FinWX:n ylläpidon ilmoitukset
------------------------------------------

J.Jäntti

Päivän tapahtumia:

Migraatio saatiin tänään suoritettua sääasemille O:sta S:ään.

Samalla, kun migraatio suoritettiin, havaittiin myös yksi täydellinen kämmennys FinWX Ruovesi-74:n kanssa, jossa ylläpidolla on peiliin katsomisen paikka todenteolla ja samalla myöskin korjattiin kyseinen moka.
Ensinnäkin, FinWX:n sääasemaosoitus on Ruovesi-74, mutta jotenkin, jostain, sääasema onkin nimeltään Ruovesi-76. Lisäksi sivun linkkirakenteesta osa oli täysin hajalla ja webcam-linkki oli levällään. Jonkin on täytynyt häiritä keskittymistäni todenteolla Heinäkuussa 2017.  ::) ???
Yhtä kaikki, se vika on nyt korjattu uuteen sivustoon eikä ole kuin paha muisto vain sen jälkeen, kun uusi serveri astuu ruotuun.

Huomenna jatkamme sääasemilla T:stä eteenpäin.
Kun migraatio on saatu suoritettua loppuun, seuraavaksi nostetaan FTP-tunnukset tietoja FinWX:lle lähettäville asemille ja sivuston julkaisujärjestelmälle ja tarkistetaan niiden toimivuus.

Pientä hidastelua on viikonloppuna odotettavissa, kun FinWX:n tietoliikenneoperaattorin vaihtoa testataan, mutta muutoin asiat uuden serverin toimintakuntoon saattamiseksi etenevät suunnitellusti.
Juha Jäntti
Foorumin ja sivuston ylläpitäjä
Finland Weather Exchange (FinWX)

http://www.finwx.net/
------------------------------------------
Ukkoskausi avattu Suomessa: --.--.2024
Ukkoskausi avattu Helsingissä: --.--.2024
-------------------------------------------
Ukkospäivälaskuri 2024; Helsinki/Viikinmäki
0 ukkospäivää.
------------------------------------------
X, FinWX:n ylläpidon ilmoitukset
------------------------------------------

J.Jäntti

08.08.2018 tapahtumia uudella alustalla:

Viimeinenkin sääasema on saatu siirrettyä uuden init.php:n alle, merkaten migraatiotyön päättyneeksi sääasemien osalta. Siirtovuorossa olivat sääasemat T:stä Y:hyn.
Samalla kertaa lista sääasemista, jotka eivät enää lähetä dataa saatiin valmiiksi ja lukema on sanalla sanoen hirveä: 26 kappaletta.

Se on 32,5% koko FinWX:lle rekisteröityneiden sääasemien määrästä ja vastaa suuruudessaan sitä, kuin suurin osa Etelä-Suomen läänin kaikista sääasemista olisi kadonnut kerrasta. Lukema ei ole mieltä ylentävä, mutta on pakko hyväksyä sellaisenaan tässä vaiheessa, sillä totuus on kuitenkin se, että harrastajapohjalla olevia sääasemia tulee ja menee. Lukeman rajuntuntuisuus johtuu yksinomaan siitä, että sääasemien toimintaa ei aktiivisesti oltu tarkkailtu mahdollisten irtaantumisten/lopettamisten varalta ja tämän migraation yhteydessä nämä poistumiset havaittiin. Listalla poistuneiksi havaitut sääasemat listataan erillisessä ketjussa, josta operaattorit voivat käydä katsomassa onko heidän sääasemansa siellä jostain syystä ja mikäli on, voi ottaa ylläpitoon yhteyttä aseman palauttamiseksi listoille.

Seuraavana tehtävänä on FTP-siirtomekanismin toimintaan saattaminen, jotta muutokset sivustonrakenteeseen saadaan tehtyä julkaisualustalla, sekä itse alustan vaihtotyön ulkopuolelta tietoliikenneoperaattorin vaihtotesti.
Juha Jäntti
Foorumin ja sivuston ylläpitäjä
Finland Weather Exchange (FinWX)

http://www.finwx.net/
------------------------------------------
Ukkoskausi avattu Suomessa: --.--.2024
Ukkoskausi avattu Helsingissä: --.--.2024
-------------------------------------------
Ukkospäivälaskuri 2024; Helsinki/Viikinmäki
0 ukkospäivää.
------------------------------------------
X, FinWX:n ylläpidon ilmoitukset
------------------------------------------

weatherc

LainaaSe on 32,5% koko FinWX:lle rekisteröityneiden sääasemien määrästä ja vastaa suuruudessaan sitä, kuin suurin osa Etelä-Suomen läänin kaikista sääasemista olisi kadonnut kerrasta. Lukema ei ole mieltä ylentävä, mutta on pakko hyväksyä sellaisenaan tässä vaiheessa, sillä totuus on kuitenkin se, että harrastajapohjalla olevia sääasemia tulee ja menee.

Ihan saman suuntaista lukemaa saisin EWN:stäkin jos laskisin. Todennäköisesti jos olisin tehnyt tilastoa muiden kuin Netatmojen + WU:jen osalta niin olisi suunta ainakin jonkin verran laskeva. Itse olen aikoja sitten "lopettanut tuosta murehtimisen". Se on vaan niin että näitä harrastajapohjaisia asemia tulee ja menee ajan mittaan.
Mulla nuo lopettaneet/kadonneet vaan tuuppaa jäämään roikkumaan tietokantaan ja jossain kohdin aina siivoan ulos sellaiset joista ei ole kuulunut pihaustakaan aikoihin (tyyliin yli 6 kuukauteen).

J.Jäntti

#26
Aikataulut ja oma työpäivän jälkeinen väsymys antoivat periksi sen verran, että asioita saatiin taas liikuteltua eteenpäin.

Tänään (16.08.2018) tapahtunutta:
Migraatio salamatutkien osalta vanhan init.php:n alta uuteen alkoi ja päättyi, koska yksittäisiä, FinWX:n sivuille päivittyviä live-asemia oli vähän ja muutostyö helppo suorittaa.
Suurin päänsärky muodostui siitä, miten saan vanhan julkaisualustaohjelmiston keskustelemaan henkeviä FTP-serverin kanssa niin, että se kirjoittaisi ensisijaisesti filuja hakemistoon, jossa sivusto palveluineen majailee - siten kuin se teki vanhalla alustalla. Kun se ei meinannut onnistua millään, yritettiin asiaa Samban ja Windows-jaon yli, kuten vanhalla ruostepommiserverillä asiat tänä päivänä ovat, mutta homma hajosi filujen ja hakemistojen oikeuksiin ja jos yritti tehdä erillistä käyttäjää, jolle sivuston rakenteeseen olisi saanut kovemmat natsat, kieltäytyi Windows ottamasta kiinni levyjakoon millään tavalla, pääosin siten että vaikka käyttäjätunnus ja salasana näytti kelpaavan, Windows väitti kivenkovaan että siinä serverissä ollaan jo toisena käyttäjänä kiinni minun työasemalta vaikka näin ei ollut. Tappelin sen kanssa kaksi päivää ja lopulta Samba sambasi huitsin nevadaan serveriltä.

Sain lopulta asiat läpi ajettua FTP:n yli käyttäen symlink-kikkailua, mikä lopulta vaati vielä kikkailua ja kirosanoja vanhalle julkaisualustallekin, se kun yritti vielä symlinkkejäkin kopioida FTP:n yli mikä pysähtyi tietenkin FTP Error 550:aan. Julkaisualusta ei ole "kuin" 15 vuotta vanha mikä voi olla syynä tuohon murheeseen. Se saatiin kuitenkin väännettyä läpi luomalla julkaisualustan puolelle tyhjä, symlinkin niminen filun ja läppäisemällä "äläpäs yritä tehdä tälle tiedostolle mitään"-lippu sen päälle.

Tekniset esteet sivuston sisällön korjaamiselle on nyt näin ollen saatu ylitettyä ja pystyn WYSIWYGäilemään ja ämpylöimään ympäriinsä uuden www-sivuston sisällön saattamiseksi taustalla manuaalisesti tehtyjen muutosten mukaiseen muotoon. Vanha www-sivusto on nyt käytännössä irrotettu julkaisualustasta ja arkistoitu, joten paluuta vanhaan järjestelmään ei teoriassa ole enää, eikä periaatteessa tarvitsekaan, koska sääasemilla on vanhassa järjestelmässä Feature Freeze päällä.

Uuden alustan sivusto korjataan julkaisualustassa vastaamaan manuaalisesti tehtyjä muutoksia tulevan viikonlopun (17.-19.08.2018) aikana, riippuen omista aikatauluistani.
Kun muutokset ovat tehty, vuorossa on vanhan alustan kloonaustoimet ja sitten alkaa se hillittömin ja hulvattomin osuus: askartelu vanhan PHP:n, MySQL:n ja FinWX:n foorumin kimpussa oikeiden tanssikuvioiden löytämiseksi, joita sitten käytetään foorumin tuomiseksi uuteen alustaan ja päivitettäväksi siinä viimeisimpiin versioihinsa.

Tässä kohtaa voidaan heittää jo ensimmäinen varovainen arvio yliheitostakin:
FinWX:n uusi alusta ottaa ohjat Syyskuun aikana.
Juha Jäntti
Foorumin ja sivuston ylläpitäjä
Finland Weather Exchange (FinWX)

http://www.finwx.net/
------------------------------------------
Ukkoskausi avattu Suomessa: --.--.2024
Ukkoskausi avattu Helsingissä: --.--.2024
-------------------------------------------
Ukkospäivälaskuri 2024; Helsinki/Viikinmäki
0 ukkospäivää.
------------------------------------------
X, FinWX:n ylläpidon ilmoitukset
------------------------------------------

J.Jäntti

Tiistain (21.08.2018) tapahtumia:

Ensimmäiset tanssikuviot on otettu ja ne johtivat oikein kivasti suoraan ojaan ja allikkoon.
Tuotannon serveristä otettu kloonikone sai toimia koealustana. Kaikki meni näennäisesti ihan hyvin: MySQL:n viimeisin 5.5-versio istahti oikein kiltisti ja mitään mukisematta paikoilleen ja foorumi toimi normaalisti. Totesin että sehän meni kivasti ja ei kun versio 5.6 sisään.
No, siitähän tuli sitten tunti turpaan, toinen torvensoittoa ja lopuksi flyygelistä päähän: 5.6:n installeri näytti heti keskisormea, että ei aio liikahtaakaan, koska installeri haluaa .NET Framework 4.5.2:n. Hain sen netistä hieman epäröiden ja ei aikaakaan kun totesin epäilyni aiheelliseksi. Frameworkin installeri näytti myös keskisormea, ettei aio liikahtaakaan koska Windows Server 2003 R2 ei ole tuettu käyttöjärjestelmä. Hei kiitti, en halunnutkaan tehdä tätä helposti.

Eli eipä sitten muuta kuin hakemaan MySQL 5.6:n .zip-paketti. Sen latautuessa alkoi epäilys hiipimään uudelleen niskaan; Mitäpä jos homma onkin niin että MySQL:n binaarit tarvitsevat jonkin uudemman .NET Frameworkin tukea... Se ei pääty hyvin.
Annoin kuitenkin latauksen mennä läpi, purin paketin ja otin kloonista snapshotin. Ei kun ääntä kohti ja päivitystä päälle. Siinä katsellessani, kuinka Microsoft-minuutit kopiointiruudussa kasvoivat noin 5 minuutista jo yli kahteen tuntiin, pyörittelin päässäni päivityskuviota muutoin. Mietin: "Jos tämä stuntti onnistuu, sitten vuorossa on tietokantataulujen päivitys ja sekin voi mennä päin hornankuusia niin ettei foorumi tule toimimaan". Ajatus oli pätevä kaikilta osin sillä tässä klooniserverissä on kaikki vanhaa ja kaikki koostuu niin monesta osasta, että huonolla säkällä tästä tulee dominoefekti. En omannut kovin positiivista asennetta, koska kynnyksiä oli yli hypittävänä enemmän, kuin luulin ja jokainen kynnys tuntui sisältävän jonkinlaisen superyllätyssektorin.

Päivitys meni lopulta läpi, mutta kun käynnistin MySQL Serverin, se pysähtyi virheeseen ja sammutti itsensä. Lokimerkinnöistä selvisi että serveri piti yhtä my.ini asetusta tuntemattomana ja pysähtyi sen vuoksi. Asetuksen kommentoinnin jälkeen MySQL käynnistyi. Yritin seuraavaksi ajaa mysql_upgrade-ohjelmaa kuten ohjeet opastivat mutta tämäpä pysähtyi ohjelman haistatteluun ettei pystynyt lukemaan serveriversiota. Dokumentaatiosta selvisi lopulta että voisin yrittää käyttää --password -valintaa, kun jostain syystä MySQL oli vahvasti sitä mieltä, että root-tunnuksella ei muka pitäisi olla salasanaa, kun tämän päivitysohjelman ajaa. Annoin tuon valinnan mukaan ja järjestelmän kysyttyä salasanaa päivitys alkoi minun suureksi hämmästykseksi. Ohjelma ei kuitenkaan voinut olla narisematta siitä että salasanan antaminen komentoriviltä voi olla vaarallista puuhaa, vaikka ohjelma itse sen sinne upotti. Kaikki meni OK-merkinnöillä Foorumin tietokantaa myöten ja foorumi jopa toimi edelleen kiltisti.

Koska tässä upposi enemmän aikaa, kuin suunniteltiin, homma jätettiin siihen ja sitten vuorossa onkin versio 5.7:n ajaminen sisään - jos se suostuu uppoamaan näin tavattoman vanhaan serveriin. Jos käy hyvin ja se saadaan toimimaan, sitten onkin vuorossa PHP:n päivittäminen 5.2 => 5.4, joka on vanhin PHP:n tukema 5.x-versio ja Simple Machinesin mukaan foorumi saattaa toimia sillä versiolla kompuroiden.

Yhtä kaikki, eteenpäin hypitään askel kerrallaan. Samat askeleet suoritetaan sitten uudelleen, kun Linux-purkki ottaa komennon. Pysykää mukana, tästä tulee varmasti vielä suorastaan pirun hauskaa.  8)
Juha Jäntti
Foorumin ja sivuston ylläpitäjä
Finland Weather Exchange (FinWX)

http://www.finwx.net/
------------------------------------------
Ukkoskausi avattu Suomessa: --.--.2024
Ukkoskausi avattu Helsingissä: --.--.2024
-------------------------------------------
Ukkospäivälaskuri 2024; Helsinki/Viikinmäki
0 ukkospäivää.
------------------------------------------
X, FinWX:n ylläpidon ilmoitukset
------------------------------------------

J.Jäntti

Päivän tapahtumia (22.08.2018):

Windows-Staging-serveri romahtaa totaalisesti, Linux-puoli kenkkuilee.
MySQL 5.7 päätti ettei sitä kertakaikkisesti kiinnosta toimia Windows Server 2003 R2:ssa. Paketista purku sujui odotetulla tavalla ja asennus suoritettiin kuten 5.6-versiolle, suoraan vanhan version yli. MySQL Service kuitenkin mietti pitkään ja lopulta romahti äärimmäisen kryptisellä virheilmoituksella. Kun edes Google ei tiennyt mikä virhe oli kyseessä, yritin käynnistää tietokantamoottorin käsin, mikä aiheutti serverin levylle älyttömän kuorman hetkeksi aikaa ja lopulta ohjelman kaatumisen ilmoitukseen "mysqld is not a valid Win32 application". Tarkistin etten ollut ottanut vahingossa 64-bittistä versiota ohjelmasta ja totesin että valinta bittileveyden kanssa oli oikea. Ihmettelin asiaa hetken ja yritin jopa asentaa Visual C++:n palikoiden 2017-versiota, joka asentuikin mutta lopputulos oli muuttumaton. Totesin että sitten jäädään 5.6:n alle ja 5.7:n kanssa sitten ihmetellään kun tietokanta siitä kopioidaan Linux-puolelle. Päivitin PHP:n versioon 5.4, joka oli viimeinen versio, joka tiettävästi toimi foorumin 1.1-version kanssa ja ei muuta kuin yrittämään.

Sitä kuvittelisi, että asiat voisivat joskus mennä kuten pitäisi mutta ei. Ei sitten niin millään. Kaiken piti olla valmista konversiohyppyä varten ja kaikki menikin odotetulla tavalla: Päivityssivu ilmestyi ja kaikki oli päällisin puolin kunnossa. Klikkaus hiirestä ja päivitys alkoi. Annettuani foorumin tiedot jatkettiin eteenpäin... ja sitten jumitettiin viisi minuuttia ja lopulta päivityspuoli jysähti todella antoisaan ja auttavaan "Unknown Error" ilmoitukseen, joka sentään osasi kertoa että jokin oli PHP:n mysqli-palikan kanssa päin honkia. Muistin että MySQL:n päivityksen jälkeen libmysql.dll-piti päivittää sekä PHP:n, että Apachen hakemistoihin, jotta se toimisi. Kopiointi sujui ilmeettömästi ja sekä Apache että PHP lähtivät käyntiin. Tällä kertaa sitten päivitysskripti levisi niin, että se ei edes ilmoittanut virheestä. Samassa tilanteessa oltiin vartinkin päästä ja luovutin.

Yritin vielä kokeilla etsiä olisiko .dll-tiedostoista erinäistä versiota saatavilla, mutta kun tie nousi sen kanssa pystyyn, piti vastausta etsiä Googlesta. Simple Machinesin foorumilla ehdotettiin seuraavaa kikkaa:
Ajetaan viimeisin versio foorumisoftasta, tuhotaan sen luoma foorumitietokanta, palautetaan vanhan foorumin tietokanta tilalle, haetaan päivityspaketti ja ajetaan se sisään, jolloin skripti konvertoi koko systeemin. Tein työtä käskettyä, räjäytin FinWX:n foorumin toimimattoman replikan hornantuuttiin ja ajoin viimeisimmän foorumisoftan sisään ja sitten alkoi säätäminen ja häärääminen. Homma tyssäsi jo ensi metreillä siihen että skriptin mukaan joitakin olennaisia filuja ei löydy. Päättelin sen olevan vain pääsyoikeusvika ja kokeilin korjata sitä, siinä kuitenkaan onnistumatta. Lopulta yritin ajaa sitä suoraan komentopuolelta ja sain ilmoitukseksi "Error: Language file out of date". Tarkistin hölmistyneenä että siellähän se nippu filuja majailee ja hain vielä varmuudeksi tuoreimman version siitä. Silti sama laulu. Tämän kanssa tappelin sitten puolitoista tuntia yrittäen mitä mielikuvituksellisempia kikkoja mutta juoksin joka kerta tiiliseinään.

Kellon tullessa 22:00 alkoi tyhmien virheiden tekeminen ja totesin sekä Windows- että Linux-pannut menetetyiksi ja ajoin molempiin palautukset.
Nyt ollaan lähtötilanteessa takaisin. Seuraavaksi mietitään että jos vielä yrittäisi temppua Linux-päässä siten että hakee ensin vanhemman version foorumisoftasta ja sitten päivittää sen viimeisimpään ja jos se ei onnistu niin sitten vielä yrittää Staging-serverin säätämistä niin, että yrittää saada komponentit pyörimään poistamalla ne kokonaan ja ajamalla ne sisään uudemmilla versioilla ja jos sekään ei onnistu, yrittää migraatiota tekemällä Windows Server 2008 R2-Staging serverin.

Se teettää vain triplasti töitä, mutta minä en tämän foorumin kanssa aio luovuttaa missään tapauksessa. Aion saada sen vielä jollain ilveellä toimimaan.

Yhtä kaikki, pieleen meni tämä päivä. Toivottavasti lähipäivinä homma luonnistuu paremmin.
Juha Jäntti
Foorumin ja sivuston ylläpitäjä
Finland Weather Exchange (FinWX)

http://www.finwx.net/
------------------------------------------
Ukkoskausi avattu Suomessa: --.--.2024
Ukkoskausi avattu Helsingissä: --.--.2024
-------------------------------------------
Ukkospäivälaskuri 2024; Helsinki/Viikinmäki
0 ukkospäivää.
------------------------------------------
X, FinWX:n ylläpidon ilmoitukset
------------------------------------------

J.Jäntti

Sunnuntain (26.08.2018) tapahtumia

Foorumin päivitysyritys päin mäntyjä, staging-serverille täysi palautus lähtökuoppiin
Yritykset saada foorumi päivitettyä versioon 2.0 sekä Windows-, että Linux-alustoilla meni puihin - siis ihan oikein huolellisesti puihin, niin että se kiertyi viisi kertaa puiden ympärille. Siinä, missä Linux-puoli väitti kivenkovaan osan elintärkeistä filuista puuttuvan vaikkei puuttunut ja Windows-puolen näyttäessä 2.0-päivityksessä keskisormea minulle MySQLi.dll-palikan toimimattomuuden jälkeen, totesin tämän taistelun menetetyksi. Tuhosin Windows-puolen serverin ja poistin Linux-puolelta kaikki foorumin osat. Tämän jälkeen kloonasin Windows-puolen serverin Staging-serveriksi ja kävin hakemassa WAMP-palikat takaisin odottamaan, mutta poikkeuksen tein siinä, että tällä kertaa lähdin foorumin 2.0:n minimiversioiden mukaan leikkimään.

Simple Machines ei tee heidän foorumiohjelmistonsa vaatimuslistastaan lainkaan helppoa luettavaa.
Minimiversio, jota suositellaan PHP:n osalta on 5.4.0:sta eteenpäin. SMF 2.0.0 => 2.0.6 käyttää PHP 5.4:sta, eikä toimi 5.5:lla. Jos PHP:n versio on 5.5 tai suurempi, foorumin vähittäisversio on 2.0.7; Selvää tähän saakka, eikö?
Sitten homma meneekin hieman kummalliseksi: Versio 2.0.14:sta eteenpäin foorumi ei toimi, jos PHP-versio on 5.3 tai alempi ja suositellaan päivittämään PHP-versio uudempaan. Eli toimiiko 2.0.0 => 2.0.13 sittenkin PHP 5.3:lla?? Ilmeisesti ei, jos minimi on 5.4.0. ::)

Tämän ristiriitaisuuden jälkeen tulin tulokseen että viimeisin 5.4-versio PHP:sta on se, joka Staging-serverillä otetaan käyttöön. Samalla kertaa aikomuksena on pitää MySQL:n 5.5-versio paikallaan, mutta päivittää se vihoviimeiseen 5.5-versioonsa. Näin ollen mitään ei tarvitse tehdä tietokannalle.
Valmiina on myöskin Apache 2.4:n viimeisin Windows-installaatio, jonka vanhan version vaikka tuhoan ja ajan uudemman "salli joka ikiseen paikkaan pääsy"-oikeuksilla toimintaan. Tarkoitus on kuitenkin saada tuo MySQLi-palikka raksuttamaan, jotta foorumin tietokanta saataisiin päivitettyä viimeisimpään versioonsa (olettaen että SMF 2.0.6-versio käyttää sitä). Tietokannan version saaminen 1.1 => 2.0 on ratkaisevassa asemassa Linux-puolen kanssa. Oletan tietokannan siirron olevan 5.5 => 5.7:n suoraviivainen sillä kannassa ei ollut mitään erikoista mikä saattaisi aiheuttaa ongelmia, kun dumpin ajaa tietokantaan sisään.

Sunnuntaina piti onnistua paljon muutakin mutta toisin kävi: Tämän siirto-operaation taustalla tapahtui myös niin, että kaverini tietokoneen korjaus epäonnistui totaalisesti. Aiemmin todettiin prosessorin kärähtäneen. Korvaavat osat (uusi prosessori, kotelo ja vesijäähdytys) saapuivat 25.8. ja kasasin ne paikoilleen. Kone toimi normaalisti yön yli. Sunnuntaina roudasin koneen kaverilleni ja se toimi normaalisti tunnin ajan. Poistuttuani paikalta, parin tunnin päästä kaverini ilmoitti koneen hyytyneen totaalisesti ja koneen jääneen samaan vikatilaan. On nyt syytä epäillä että emolevy on onnistunut murhaamaan myös tämän uudenkin prosessorin ja koska en käyttänyt valmistajan omaa jäähdytysratkaisua, takuu lensi myös ikkunasta ulos. Se siitä 100€:n investoinnista. Tuleepahan kivat avaimenperät niistä  ::).

Uudet osat (emolevy ja prosessori) ovat tilattu. Niitä odotellessa teen hänelle varakoneen ja se ohittaa tällä hetkellä kaiken muun, mukaanlukien tämän päivitysprosessin. Osat saapuvat 1-2 viikon kuluttua mutta sen aikaa hänellä on ainakin varakone olemassa. Meno jatkuu näin ollen torstain ja sunnuntain välimaastossa.

Toivottavasti tämä foorumin päivitysoperaatio onnistuisi tällä kertaa, jotta tämä merkittävin operaatio saataisiin viimein saateltua maaliin saakka ja siloteltua tie itse koko alustan lopulliselle siirtymälle Windowsista Linuxiin.
Juha Jäntti
Foorumin ja sivuston ylläpitäjä
Finland Weather Exchange (FinWX)

http://www.finwx.net/
------------------------------------------
Ukkoskausi avattu Suomessa: --.--.2024
Ukkoskausi avattu Helsingissä: --.--.2024
-------------------------------------------
Ukkospäivälaskuri 2024; Helsinki/Viikinmäki
0 ukkospäivää.
------------------------------------------
X, FinWX:n ylläpidon ilmoitukset
------------------------------------------