PHP/Instalacja/MySQL 5: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
C64club (dyskusja | edycje)
→‎Instalacja MySQL 5.0: Dodano opis konfiguracji pod linuksem
C64club (dyskusja | edycje)
Linia 15:
Żeby przekonać sie, czy serwer Mysql działa, należy spróbować się na niego zalogować.
Jako root:
<source lang="bash">$ mysql -u root -p</source>
Jeśli mysql zapyta o hasło to znaczy, że działa.
Gdy zaś otrzymamy komunikat w stylu "cannot connect", musimy sprawdzić i poprawić/uzupełnić/dokoczyć konfigurację:
 
1. Czy w katalogu /etc jest plik my.cnf. Jeśli go nie ma, należy skopiować w któryś z gotowych plików my-[small|medium|large|huge].cnf. Przykładowo dla prostej bazy danych na zwykłym dmowym PC do ćwiczeń w zupełności wystarczy model small - nie zużyje wielkich połaci RAM'u.
<source lang="bash"># cp /etc/my-small.cnf /etc/my.cnf</source>
 
Teraz należy utworzyć grupę mysql i użytkownika mysql (niewykluczone, że już istnieje), nadać mu hasło i prawa do katalogów i programów związanych z MySQL.
Linia 29:
 
Nieskonfigurowany MySQL daje nam możliwość łatwego wyboru miejsca, w którym będą przechowywane bazy. Można wybrać standardowe miejsce w /var/lib/mysql, ale byłoby dobrze nie przechowywać ważnych danych na partycji systemowej. Wielu użytkowników ma katalog /home domyślnie przez dystrybucję lub z własnego wyboru umieszcony na innej partycji lub nawet innym dysku. Warto wtedy utworzyć w w /home katalog na bazy, który przeżyje każdą katastrofę łacznie z ponowną instalacją systemu. Obojętnie, które rozwiązanie wybierzesz, dalej będę się posługiwał nazwą /ścieżka/do/bazy.
<source lang="bash"># mkdir /ścieżka/do/bazy (np. /home/mysql_bazy)
# chown -R mysql:mysql /sciezka/do/bazy</source>
 
Następnie należy przygotować katalog roboczy MySQL'a. Należy to zrobić jako użytkownik mysql - inaczej będziemy mieli trudnośi z uruchomieniem i działąniem serwera, prawami dostępu etc.
<source lang="bash"># su - mysql
$ mysql_install_db --datadir="/ścieżka/do/bazy"
$ exit (wyjście do roota)</source>
Linia 39:
Jeśli instalowaliśmy bazę w innym niż domyślny katalogu, należałoby uwzględnić tę zmianę w skrypcie startowym serwera. W tym celu otwieramy w dowolnym edytorze plik /etc/rc.d/rc.mysqld, odnajdujemy zapis mysqld_safe --datadir=/var/lib coś_tam_dalej i zmieniamy go na mysqld_safe --datadir=/ścieżka/do/bazy coś_tam_dalej. Serwer musi wiedzieć, z jakim katalogiem będzie pracował. W innych dystrybucjach (np. Debian) skrypty startowe umiesczane są w katalogu /etc/init.d/.
Przy okazji zajmiemy sie automatycznym uruchamianiem serwera na przyszłość.
<source lang="bash"># chmod 755 /etc/rc.d/rc.mysqld</source>
 
Teraz już możemy uruchomić serwer:
Edytujemy plik /var/lib/mysql/mysqld.conf (w innych dystrybucjach np. /var/lib/mysql/mysqld.conf)i, jeśli baza będzie służyć tylko nam na naszym komputerze (a tak zakłądamy w podręczniku), należy odkomentować (usunąć znak # z początku) linijkę, w której znajduje sie zapis "skip-networking". W ten sposób odetniemy użytkownikom innych komputerów możliwość zdalnego logowania się do naszej bazy.
<source lang="bash"># su -mysql
$ /etc/rc.d/./rc.mysqld start &</source>