PHP Fatal error: [ionCube Loader] The Loader must appear as the first entry in the php.ini file in Unknown on line 0

2012-07-02

Do błędu doszło podczas instalcji rozszerzenia Zend do PHP o nazwie ioncube. Właściwie komunikat mówi sam o tym co jest przyczyną. Rozszerzenia  muszą być ładowane w odpowiedniej kolejności, a ioncube… chce być pierwszy. Tymczasem ja z przyzwyczajenia, aby nie zaburzyć kolejności, umieściłem go na końcu.

Ilustracja poniżej pokazuje poprawną kolejność ładowania rozszerzeń:

O tym samym błędzie można też poczytać tutaj:

http://kb.parallels.com/en/1520

By Rafał Kraik in Błedy, Linuxy

Bład podczas uruchamiania httpd (apache) Address already in use: make_sock: could not bind to port 80

2012-06-28

Podczas próby uruchomienia Apache otrzymałem błd:

Address already in use: make_sock: could not bind to port 80

Po pierwsze należy sprawdzić jaki proces obecnie działa na porcie 80.  Posłuży do tego program netstat:

netstat -tulpn | grep :80

W ten sposób znajdziesz numer procesu, który zajał port 80. Teraz go… zabij podajc nazwę procesu lub jego numer np.:

killall -9 httpd

Gdyby to miało nie pomóc mamy jeszcze polecenie:

 fuser -k -n tcp 80

Potem można już normalnie uruchomić proces htpd np.

/usr/local/apache/bin/apachectl start
By Rafał Kraik in Błedy, Linuxy

PHPMyAdmin #1146 – Table 'information_schema.CHARACTER_SETS’ doesn’t exist

2012-06-27

Po zainstalowaniu najnowszego phpMyAdmin-a oraz mysql w wersji 4.1 oraz php w wersji 5, przy próbie zalogowania się do phpMyAdmina pojawiał mi się komunikat:

Zapytanie SQL: DokumentacjaEdytuj Edytuj

SELECT * FROM information_schema.CHARACTER_SETS

MySQL zwrócił komunikat: Dokumentacja
#1146 - Table 'information_schema.CHARACTER_SETS' doesn't exist

Doczytałem. Od wersji phpMyAdmin 3nie ma już wstecznej kompatybilności z MySQL 4 i wcześniejszymi. Musiałem więc zainstalować phpMyAdmin w wersji 2.10

By Rafał Kraik in Błedy, Linuxy

Błąd podczas kompilacji PHP (/usr/bin/ld: cannot find -lltdl)

2012-06-26

Do mojej instalacji PHP potrzebowałem wersji skompilowanej na mojej maszynie. O ile większość problemów była rozwiązywna na bieżąco przez skrypt configure, który informował o niespełnionych zależnościach, o tyle jeden błąd pojawił się dopiero podczas kompilacji! (make)

Otóż, bo włączeniu do opcji

 ./configure --with-mcrypt

na maszynie x64 z Fedora 13 kompilacja kończyła się komunikatem:

/usr/bin/ld: cannot find -lltdl
collect2: ld returned 1 exit status
make: *** [libphp5.la] Error 1

Czytaj dalej »

By Rafał Kraik in Błedy, Linuxy

Dependencies na Linuxie, zabawa w kotka i myszkę podczas kompilacji…

2012-06-26

Linux jest fajny. Linux bywa trudny. Linux daje dużo satysfakcji, gdy uda się pokonać wszystkie problemy. Ot np na mojej Fedorce instaluję PHP. PHP ma być w konkretnej wersji, więc nie obędzie się bez kompilacji. I zaczyna się:

configure: error: Please reinstall the libcurl distribution -
    easy.h should be in <curl-dir>/include/curl/

Bardzo często taki błąd oznacza, że brakuje pakietu libcurl-devel. Zauważ, że binarny pakiet libcurl może być zainstalowany, brak jednak źródeł! Problemy tego rodzaju rozwiążesz instalując pakiet rozszerzony o -dev lub -devel:

yum install libcurl-devel

Czytaj dalej »

By Rafał Kraik in Błedy, Linuxy

Fedora 13. Brak klienta ssh

2012-06-26

Fedora 13 nie posiadała klienta ssh. Po wydaniu polecenia ssh pojawiał się komunikat:

bash: ssh: command not found

Klienta trzeba było doinstalować. Zgodnie ze wskazówką na stronie http://www.zriel.com/linux/38-bash-scp-command-not-found-linux-fedora wystarczyło zainstalować odpowiednie pakiety komendą:

yum install ssh*
By Rafał Kraik in Błedy, Linuxy

Plan zapytania dla Insert

2012-06-19

Plan zapytania dla polecenia INSERT powinien zawiera informacje o tym jak będzie przebiegać wstawienie rekordu. Możesz więc zobaczyć tutaj, jak serwer w celu wstawienia jednego tylko rekordu modyfikuje wszystkie indeksy dla określonej tabeli. To właśnie z tego powodu przed dużym importem danych warto wyłączyć indeksy (DISABLE), aby w czasie wykonywania importu nie aktualizować na bieżąco indeksów. Wyłączone indeksy należy po imporcie włączyć, aby znowu było można z nich korzystać.

Dodatkowo, jeżeli tabela, do której wstawiasz rekord posiadała by triggera, to wygenerowany zostanie jeszcze jeden dodatkowy plan zapytania dla procedury triggera.

By Rafał Kraik in SQL