INTERNET:
Workshop: j zyk Perl
Giełda w Internecie
Wst p
Instalacja MySQL-a
Wypełnianie bazy danych
Wyszukiwanie ogłosze
Kontrola poprawno ci...
Moduły Perla - pomoc...
Instalacja MySQL-a
Marcin Nowak
Programy do obsługi sklepów internetowych s zazwyczaj drogie i skomplikowane. Wad takich nie maj
skrypty Perla, które przy odrobinie wysiłku mo na stworzy samodzielnie. Szczególnie wygodne w takich
zastosowaniach s tak zwane moduły.
Dzi ki bibliotekom wykonywanie nawet skomplikowanych zada mo e by bardzo proste. Moduły s małymi
zestawami programów oraz skryptów, które zawieraj gotowe procedury do realizacji okre lonych zada . Z
naszego punktu widzenia szczególnie interesuj ce s dwie biblioteki: moduł CGI, który ułatwia przetwarzanie
formularzy, oraz DBI zapewniaj cy prosty dost p do popularnych baz danych.
W tym artykule poka emy, jak stworzy prost giełd . Poniewa niedługo zacznie si sezon narciarski,
przygotujemy mał baz danych z my l o miło nikach szusowania po niegu. Ka dy, kto zechce sprzeda narty,
wi zania albo inne akcesoria, b dzie mógł umie ci swoje ogłoszenie w jednej z trzech kategorii. Aby ogłoszenia
nie były pokazywane w niesko czono , po 30 dniach ka dy anons b dzie automatycznie usuwany z bazy. Osoba
przegl daj ca ogłoszenia b dzie miała mo liwo bezpo redniego skontaktowania si z autorem interesuj cej j
oferty za po rednictwem poczty elektronicznej.
Wszystkie opisane w tym artykule pliki znajduj si na płycie CD-ROM doł czonej do tego numeru CHIP-a. Plik
gielda _form.html zawiera dwa formularze: jeden do wpisania prostego ogłoszenia, drugi do przeszukiwania bazy
danych. Jako baz danych wykorzystujemy MySQL, który cieszy si du popularno ci , bo dla systemów
Linux/Unix jest on darmowy. Dost pna jest równie jego shareware'owa wersja dla Windows. Wszystkie u yte
skrypty, czyli db_tworzenie.pl, db_dodanie.pl i db_przegladanie.pl, s niemal identyczne dla Windows i dla
Linuksa. Ró ni si one jedynie pierwszymi wierszami, zawieraj cymi cie k dost pu do Perla.
----
Info
Grupy dyskusyjne
Uwagi i komentarze do artykułu:
news://news.vogel.pl/chip.artykuly
Pytania techniczne:
news://pl.comp.lang.perl
news://comp.lang.perl
Internet
MySQL
http://www.mysql.org/
CPAN
http://www.cpan.org/
Polskie mirrory
http://sunsite.icm.edu.pl/pub/unix/mysql/
ftp://sunsite.icm.edu.pl/pub/CPAN/
W dziale Internet | Workshop: j zyk Perl znajduj si opisywane pliki i skrypty, u ywane moduły Perla oraz serwer
MySQL
Instalacja MySQL-a
Aby skrypty mogły działa , musimy zainstalowa MySQL-a, baz danych gielda oraz zało y konto o nazwie
webserver z hasłem dummy. W ramce na ko cu artykułu znajduje si dokładny opis sposobu wykonania
powy szych czynno ci. Je li baza danych działa, mo emy skonfigurowa interfejs Perla, który b dzie z ni
współpracował.
Główna strona naszej giełdy umo liwia zarówno dodawanie ogłosze , jak i ich wyszukiwanie.
Po sko czonej konfiguracji kopiujemy trzy skrypty z płyty CD-ROM do katalogu /cgi-bin/ serwera WWW, a
dokument HTML do foldera ze stronami WWW. Nast pnie uruchamiamy Apache'a oraz demona MySQL i za
po rednictwem przegl darki WWW otwieramy skrypt db_tworzenie.pl. Mo emy to zrobi w nast puj cy sposób:
http://localhost/cgi-bin/db_tworzenie.pl
Je li wszystko przebiegnie poprawnie, skrypt doda tabel o nazwie ogloszenie do bazy danych gielda. W pierwszej
cz ci programu na pocz tku nast puje deklaracja u ycia modułów DBI i CGI. Nast pnie jest tworzony obiekt o
nazwie $cgi_obj, który odpowiada stronie generowanej przez skrypt. Po porównaniu tego programu z przykładami
przedstawionymi w dwóch pierwszych cz ciach kursu zauwa ymy zmian w sposobie pisania programu. Perl 5 jest
j zykiem zorientowanym obiektowo i wła nie te jego wła ciwo ci wykorzystujemy tym razem.
Na zako czenie skrypt tworzy poł czenie z baz MySQL. W tym celu wykorzystywany jest moduł DBI oraz
sterownik dedykowany dla MySQL. Skrypt ł czy si z baz gielda, z uprawnieniami u ytkownika webserwer,
u ywaj c hasła dummy.
Po zestawieniu poł czenia z baz danych zmiennej $dbh przypisywana jest poprawna warto . Je eli tworzenie
poł czenia si nie powiedzie, $dbh nie b dzie miała adnej warto ci. Informacja o przyczynie niepowodzenia
zostanie zapisana w zmiennej $DBI::errstr.
Aby u ytkownik wiedział, co si dzieje, za pomoc konstrukcji warunkowej if-else do przegl darki wysyłany jest
komunikat o sukcesie lub niepowodzeniu próby poł czenia z baz . Moduł CGI sprawia, e tworzenie kodu HTML
jest o wiele prostsze. Polecenie:
print p('To jest mój tekst');
daje taki sam efekt co:
print '<p>To jest mój tekst</p>';
Ze wzgl du na lepsz czytelno w przykładowych skryptach nie b dziemy jednak u ywali tej wła ciwo ci
biblioteki CGI. Szczegółowy opis bogatych mo liwo ci modułu CGI znale mo na w doł czonej do niego
dokumentacji.
Wró my jednak do skryptu. W nast pnym kroku wysyłamy do naszej bazy danych polecenie SQL, które znajduje
si w nawiasie klamrowym za $dbh->do. Powoduje ono utworzenie tabeli o nazwie ogloszenia. Jej kolumny
powinny mie okre lone nazwy, a dane format. Kolumna data powinna by typu DATE, a pola kategoria, tresc i
mail typu VARCHAR z maksymalnymi liczbami znaków podanymi w nawiasach klamrowych. Dzi ki temu zawarte
tam dane mog si składa z liter, cyfr i innych znaków. Przy zastosowaniu, na przykład, typu INTEGER
dopuszczalne byłyby jedynie liczby całkowite. W sumie MySQL obsługuje kilkana cie ró nych formatów danych.
Wybór wła ciwego jest szczególnie wa ny w przypadku wykonywania operacji matematycznych na
przechowywanych danych.
Równie na tym etapie kontrolujemy poprawno wykonania programu. Na zako czenie skrypt przerywa poł czenie
z MySQL i ko czy generowanie kodu HTML. Operacje te mo na zrealizowa bardzo łatwo, korzystaj c z pola
end_html obiektu CGI, który pozwala wysła do przegl darki sekwencj znaczników </body></html>.
Wypełnianie bazy danych
W naszej bazie danych utworzyli my ju tabel . Teraz musimy wypełni j tre ci . Pomo e nam w tym gotowy
formularz, w którym po wpisaniu informacji musimy jedynie wcisn przycisk Wy lij. Wykonanie tej czynno ci
uruchamia skrypt db_dodaj.pl. W trzech krótkich poleceniach dane z formularza zapisywane s w odpowiednich
zmiennych. Je li przypomnimy sobie zło one konstrukcje z pierwszej cz ci naszego kursu, od razu zauwa ymy,
jakim ułatwieniem dla programisty jest moduł CGI.pm. Wiersz:
$kategoria=$cgi_obj->param( 'kategoria');
wystarcza do przeniesienia wpisu z formularza do zmiennej o takiej samej nazwie.
Kolejne linie skryptu s nam ju dobrze znane. Kod zapisany w jednym wierszu wystarcza, aby umie ci dane w
tabeli ogloszenie. Robimy to za pomoc prostej komendy SQL-a INSERT.
W takiej samej kolejno ci, w jakiej wcze niej tworzyli my kolumny, teraz wpisujemy do nich dane. Kategoria, tresc
i mail pochodz z formularza, aktualn dat MySQL odczytuje za z funkcji NOW() i dodaje j do kolumny data w
formacie Date (rrrr-mm-dd). Po wykonaniu zapytania dane te b d ju znajdowały si w bazie. Wy wietlimy je za
pomoc trzeciego skryptu o nazwie db_przegladanie.pl.
Wyszukiwanie ogłosze
Ostatni skrypt Perla uruchamiany jest z formularza Wyszukiwanie ogłosze . Zapytanie wysyłane do bazy danych
wybiera wszystkie pola (*) z tabeli ogloszenie, dla których warto pola kategoria równa jest warto ci zapisanej w
zmiennej $kategoria. Zamiast gwiazdki * te mo emy u y nazwy konkretnych pól. Wówczas polecenie b dzie
miało posta : SELECT mail, tresc FROM ogloszenie...
Ogłoszenia, które maj wi cej ni 30 dni, maj nie by wy wietlane. Data umieszczenia ogłoszenia na giełdzie nie
mo e wi c by o ponad 30 dni wcze niejsza od daty bie cej. Aby wykona takie porównanie, dat musimy
przekształci do postaci Liczba dni od (komputerowego) roku 0. Słu y do tego funkcja MySQL-a o nazwie
TO_DAYS().
Zasada działania interfejsu CGI: za jego po rednictwem wymieniane s dane pomi dzy Internetem i baz
danych na serwerze. Moduły Perla pozwalaj na wygodne sterowanie przepływem informacji.
Poniewa zapytania typu WHERE mog by bardzo skomplikowane, osoby, które zamierzaj opracowywa własne
bazy danych, powinny dokładnie zapozna si z budow zapyta SQL i przejrze dokumentacj MySQL.
Podczas pracy z MySQL u ytkownicy Windows musz pami ta o tym, e obowi zuje ich składnia
charakterystyczna dla systemów uniksowych. OGLOSZENIE i ogloszenie to dwie ró ne tabele. O regułach tych
nale y pami ta szczególnie wówczas, gdy chcemy w przyszło ci uruchamia skrypty równie w rodowisku Unix.
Dla własnej wygody warto pisa wszystko wył cznie małymi literami.
Polecenie $sth->execute(); spowoduje wysłanie zapytania SQL zapisanego wcze -niej w obiekcie $sth poleceniem
$sth=$dbh ->prepare('zapytanie')...
Kontrola poprawno ci zapyta
W naszym przykładzie sprawdzamy najpierw, czy odpowied na zapytanie ma poprawn warto . Je eli zmienna
$sth nie ma warto ci, w oknie przegl darki wy wietlany jest komunikat o bł dzie. W poprzednich cz ciach kursu
u ywali my do tego funkcji die, która mo e przerwa wykonywanie skryptu i wysła informacj o bł dzie do
standardowego wyj cia. Tak mo na zrobi i tym razem.
W drugim kroku program sprawdza, czy w bazie danych s wpisy spełniaj ce kryteria wyszukiwania. Poniewa
wyst puj tu tylko dwie mo liwo ci (wpisy s albo ich nie ma), odpowied na zapytanie generowana jest z
wykorzystaniem konstrukcji warunkowej if-else. Je li liczba pasuj cych wpisów wynosi 0, do przegl darki
wysyłany jest komunikat W kategorii... nie znaleziono adnych elementów spełniaj cych kryteria wyszukiwania.
Je li przeszukiwanie zako czyło si sukcesem, wykonywany jest program odpowiadaj cy warunkowi else.
Konstrukcja while(warunek) {blok programu} otwiera p tl , która wykonywana jest tak długo, jak długo warunek
podany w nawiasie jest spełniony. W naszym przypadku za pomoc metody fetchrow_hashref() wynik
wyszukiwania wiersz po wierszu zapisywany jest w zmiennej $wiersz. Nast pnie komendami print dodajemy
informacje o ogłoszeniu do kodu HTML tworzonej strony.
Zwró my uwag , e po komendzie print u ywamy podwójnych znaków cudzysłowu. Poniewa znak ten wyst puje
równie w kodzie HTML, musimy je poprzedzi uko nikiem \. W naszym przykładzie sytuacja taka ma miejsce w
odsyłaczu do adresu e-mail. Je eli zapomnimy o uko niku, wykonywanie skryptu zostanie przerwane i przegl darka
wy wietli bł d Server-Error 500. Innym sposobem obej cia tego problemu jest stosowanie pojedynczych znaków
cudzysłowu. W takim wypadku ła cuchy tekstowe musimy poł czy kropkami. Pierwszy wiersz generuj cy
informacje wyj ciowe dla przegl darki wygl dałby wówczas nast puj co:
print'<p>.$wiersz->{'opis'}.'<br>';
Aby po wykonaniu programu zwolni zasoby obiektu $sth, na ko cu skryptu powinni my umie ci wiersz $sth-
>finish();.
Moduły Perla - pomoc dla programisty
Opisane tutaj moduły CGI.pm i DBI s jedynie dwoma przedstawicielami licznej grupy niezwykle u ytecznych
bibliotek. Wszystkie maj jedn wspóln cech : mo na je znale w CPAN - Comprehensive Perl Archive Net-
work. W archiwum tym moduły posegregowane zostały według dwóch kluczy: zastosowania i nazwiska autora.
Niektóre biblioteki s w ka dej standardowej instalacji Perla. Nale y do nich mi dzy innymi CGI.pm. Oprócz niej w
pakiecie znajduj si równie programy CPAN (Unix/Linux) lub PPM (Windows), które bardzo ułatwiaj
dodawanie kolejnych modułów do Perla.
W tej cz ci kursu wykorzystywany jest moduł DBI, zawieraj cy zestaw funkcji do współpracy z wieloma bazami
danych. Jest w ród nich MySQL. Instalacj sterownika dla Windows ułatwi nam Perl Packet Manager - PPM.pl.
Program ten jest cz ci składow Active Perl (
http://www.activestate.com/
), na którym bazuje okienkowa wersja
Perla, wykorzystywana na potrzeby kursu.
Chc c zainstalowa dowolny moduł, musimy mie aktywne poł czenie z Internetem. Otwieramy okno trybu MS-
DOS i komend
cd przechodzimy do katalogu instalacyjnego Perla i do podkatalogu bin. Poleceniem perl ppm.pl
uruchamiamy mened era pakietów. Pojawia si znak zach ty PPM>. Wydajemy teraz komend
install DBI.
Program nawi zuje poł czenie z serwerem Active State, producenta Active Perl, automatycznie pobiera moduł i
instaluje na komputerze. Nast pnie wydajemy analogiczne polecenie
install DBD-mysql. Teraz pobierany jest
sterownik dla MySQL. Je eli nasze poł czenie z Internetem jest niestabilne i PPM nie potrafi sam ci gn plików z
modułami, pozostaje zrobienie tego r cznie. Z katalogu
http://www.activestate.com/PPMpackages/5.6/x86/
pobieramy odpowiedni zbiór *.tar.gz, a z folderu
http://www.activestate.com/PPMpackages/
taki sam z
rozszerzeniem ppd. Nast pnie umieszczamy oba w jednym katalogu (na przykład c:\tmp) i po uruchomieniu
mened era pakietów wydajemy polecenie instalowania z katalogu (np.
install /location c:\tmp DBD-mysql).
W Linuksie jest dost pny program CPAN, wchodz cy w skład standardowej dystrybucji Perla. Zaczynamy od
nawi zania poł czenia z Internetem i upewnienia si , e MySQL jest uruchomiony. Nast pnie w oknie terminala
wywołujemy moduł poleceniem perl -MCPAN -e shell. Przy pierwszym uruchomieniu program wymagał b dzie
podania kilku parametrów konfiguracyjnych. W wi kszo ci przypadków wystarczy udzielanie domy lnych
odpowiedzi, czyli naciskanie klawisza [Enter]. Po podaniu przez nas nazwy kraju wy wietlona zostanie lista
lokalnych serwerów FTP, udost pniaj cych archiwa CPAN. Mo emy wybra jeden lub kilka z nich.
Przy aktywnym poł czeniu z Internetem uruchamiamy moduł zgodnie z podanym wcze niej opisem. Wy wietlony
zostaje znak zach ty w postaci cpan>. Wydajemy teraz komend
install Bundle::DBD::mysql, która rozpoczyna
instalacj całej serii modułów Perla, a na zako czenie sterownika dla MySQL-a. Wcze niej musimy jeszcze poda
cie ki dost pu do katalogów instalacyjnych. Program zada nam kilka pyta , na które powinni my odpowiada ,
naciskaj c [Enter].
Po zako czonej instalacji MySQL zdefiniowane wcze niej konto undef z hasłem undef przestaje istnie . Zmieniamy
teraz nazw testowej bazy danych z test na gielda i zakładamy u ytkownika webserver z hasłem dummy lub
wybieramy takie nazwy, jakie wprowadzili my w tablicy uprawnie (grant tables) MySQL. Podczas instalacji
sterownika nast puje jego próbne uruchomienie. W razie wyst pienia bł dów instalacja zostaje przerwana.
Je eli nie jeste my pewni, jak nazw nosi nasz moduł, mo emy j odszuka . Pod Windows korzystamy z ppm.pl i
polecenia
search mysql. U ytkownicy Linuksa wydaj po znaku zach ty cpan> komend i /mysql/, po czym
wy wietlona zostanie lista wszystkich pakietów do wyboru.
Je eli automatyczna instalacja modułów si nie powiodła, nale y zrobi to r cznie (po zainstalowaniu MySQL-a).
ci gamy samemu z jednego z mirrorów CPAN-u, na przykład serwera
ftp://sunsite.icm.edu.pl/
, katalogu pub/
CPAN/modules/by-module/ pliki DBI-wersja.tar.gz oraz Msql-Mysql-modules-wersja.tar.gz. Rozpakowujemy je i
wydajemy polecenia:
Perl Makefile.PLmakemake testmake install
Instalacja MySQL-a
Jako baz danych w naszym kursie wykorzystujemy MySQL-a, który jest bardzo popularny i cz sto
wykorzystywany przez u ytkowników Linuksa. Pojawiła si te wersja dla 32-bitowych systemów Windows,
jednak bezpłatnie mo na korzysta z niej tylko przez 30 dni. U ywanie programu po okresie próbnym wymaga
wykupienia licencji za ok. 200 USD lub zmiany systemu operacyjnego.
MySQL-a w Linuksie najpro ciej zainstalowa z wersji RPM. Niezb dne s pakiety: MySQL, MySQL-client,
MySQL-devel oraz MySQL-shared. Pierwszy zawiera sam baz danych i po jego zainstalowaniu MySQL mo e ju
działa . Nie da si jednak nim administrowa , bo wszystke niezb dne do tego programy znajduj si w w pakiecie
MySQL-client. MySQL-devel zawiera biblioteki programistycze do obsługi bazy danych, które w naszym
przykładzie s wykorzystywane podczas kompilacji bibliotek Perla, a MySQL-shared dodatkowe pliki. Po
ci gni ciu wymienionych modułów nale y je zainstalowa , wydaj c po kolei polecenia:
rpm -i nazwa_modulu-wersja.rpm.
Instalacja w Windows wymaga, aby na komputerze uruchomiony był protokół TCP/IP. Warunek ten spełniony jest
zawsze wtedy, gdy komputer ma dost p do Internetu. Najpierw rozpakowujemy skompresowany pakiet MySQL do
katalogu tymczasowego i uruchamiamy program
Setup. Domy lnie MySQL instalowany jest w katalogu C:\mysql.
Je eli chcemy mie go w innym miejscu, zainstalujmy go w folderze domy lnym i dopiero pó niej przenie my go
do innego katalogu. Nast pnie, uruchamiaj c program, nale y zrobi to z przeł cznikiem --basedir (na przykład
D:\programs\mysql\bin\mysqld --basedir D:\programs\mysql).
Po zako czonej instalacji musimy otworzy okno trybu DOS. Robimy to, wybieraj c z menu Start polecenie
Uruchom i wpisuj c tam komend :
c:\mysql\bin\mysqld-shareware
Serwer uruchamia si w tle bez otwierania własnego okna. Je li wi c nic si nie dzieje, mo emy uzna , e wszystko
przebiega poprawnie. U ytkownicy Windows NT musz u ywa innych polece , które opisane s w rozdziale
4.12.3 dokumentacji serwera SQL. Prac MySQL-a przerywamy komend :
c:\mysql\bin\mysqladmin -u root shutdown
Pomimo e pojawiły si graficzne interfejsy dla Linuksa, zarz dzanie baz danych bez pomocy klawiatury jest
niemo liwe. Pierwsza przeszkoda, na jak natrafi miło nicy myszki, jest zarazem najpowa niejsza. Poniewa nie
ka dy u ytkownik powinien mie mo liwo dost pu do wszystkich baz danych, MySQL wyposa ony jest w tzw.
tabele uprawnie (Grant Tables), przechowywane w bazie danych o nazwie mysql. W tabelach tych zawarte s
wpisy mówi ce o tym, kto, z jakiego komputera, do której bazy danych mo e uzyska dost p i jakie operacje na tej
bazie mo e wykonywa .
Aby przyjrze si zawarto ci tabel i jednocze nie sprawdzi poprawno instalacji MySQL-a, wpisujemy w oknie
terminala nast puj c komend (u ytkownicy Linuksa podaj cie k dost pu odpowiadaj c ich instalacji):
c:\mysql\bin\mysqlshow
Na ekranie pojawia si lista baz danych. W przypadku wie ej instalacji lista ta zawiera tylko dwa elementy: test i
mysql. Poleceniem:
c:\mysql\bin\mysqlshow -u root mysql
wy wietlamy tabele bazy danych mysql, czyli omawiane wcze niej Grant Tables.
Komunikaty w postaci Access denied for wiadcz najcz ciej o le podanych prawach dost pu. Dokładne
wskazówki i przykłady dotycz ce praw dost pu podane s w dokumentacji.
Niniejszy opis ogranicza si do konfiguracji jednego konta MySQL, pod którego nazw serwer WWW b dzie
pó niej zarz dzał demonstracyjn baz danych. Poniewa w naszym przykładzie konieczne b dzie tworzenie tabel
oraz zapisywanie, modyfikowanie i kasowanie rekordów, u ytkownik musi mie uprawnienia do wykonywania
takich operacji.
Przed utworzeniem nowego konta zalecane jest usuni cie u ytkownika pustego (w wersji Windows jest on
zakładany domy lnie) i zabezpieczenie hasłem konta administratora MySQL-a.
Polecenie:
c:\mysql\bin\mysql mysql
otwiera dost p do bazy mysql, czyli do tabel uprawnie . Jednocze nie pojawia si znak zach ty mysql>. Lista
wszystkich dost pnych polece wy wietlana jest po wpisaniu help.
Najpierw kasujemy (DELETE) puste konto (' ') i na zako czenie wydajemy komend
quit. Pami tajmy o tym, e
ka dy wiersz polecenia wydany po znaku zach ty mysql> musi ko czy si rednikiem:
mysql> DELETE FROM user WHERE Host='localhost' AND User=' ';mysql> QUIT
Wszelkie zmiany wprowadzone w tabelach uprawnie odnosz skutek dopiero po wpisaniu komendy:
c:\mysql\bin\mysqladmin reload
Za pomoc
C:\mysql\bin>mysql -u root mysql, a nast pnie mysql> set password for root =
PASSWORD('moje_haslo'); ustawiamy hasło dla u ytkownika root. Teraz aby zatrzyma działanie MySQL w
Windows, wystarczy wyda polecenie
c:\mysql\bin\mysqladmin --user= root --password=moje_hasło
shutdown.
Nast pnie tworzymy baz danych o nazwie gielda. Po wpisaniu
c:\mysql\bin\mysql -u root -p najpierw pojawi si
danie podania hasła. Dopiero po podaniu prawidłowego hasła wy wietlony zostanie znak zach ty MySQL.
Wpisujemy wówczas nast puj cy wiersz, zako czony rednikiem:
mysql> CREATE DATABASE gielda;
W odpowiedzi pojawi si krótki komunikat z potwierdzeniem wykonania operacji. Nadal pozostajemy w trybie
konfiguracyjnym MySQL. Poleceniem
use mysql przechodzimy do tabel uprawnie , poniewa musimy teraz
zało y konto, które pó niej pozwoli serwerowi WWW na dost p do bazy danych.
U ytkownikowi nadamy nazw webserver. Z komputera localhost (MySQL i Apache zainstalowane s na tej samej
maszynie) b dzie on mógł wybiera , dodawa , kasowa i modyfikowa rekordy oraz tworzy tabele. Jako hasło dla
tego u ytkownika wybieramy dummy. W tej bazie nie przechowujemy adnych bardzo wa nych informacji, wi c
mo emy u y takiego hasła. Pami tajmy jednak, e je eli b dziemy robili powa ny projekt, w którym b d
u ywane wa ne dane, hasło nie mo e by wyrazem i musi by trudne do odgadni cia.
MySQL pozwala zało y u ytkownika na dwa sposoby. Mo emy kolejno modyfikowa tabele user, host i db (patrz:
rozdział 6. dokumentacji) lub u y komendy Grant. Wybierzmy teraz drug metod , aczkolwiek równie z pierwsz
powinni my si zapozna , je li pó niej chcemy na powa nie zaj si MySQL-em:
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE ON gielda.*TO
webserverIDENTIFIED BY 'dummy';
W ten sposób wykonali my wszystkie czynno ci wymagane do uruchomienia skryptu.