[ Pobierz całość w formacie PDF ]
to najlepsze rozwiązanie. Program mysql i inne programy dostępne w instalacji MySQL korzy-
stają z parametrów znajdujących się w sekcji [client] plików konfiguracyjnych. Parametry
te są odczytywane po parametrach pliku c:\my.cnf lub /etc/my.cnf, więc można przesłonić
globalne opcje, podając w lokalnym pliku inne wartości.
Specyfikacja lokalnego pliku konfiguracyjnego jest identyczna ze specyfikacjÄ… pliku global-
nego. Inny jest tylko typ ustawień, jakie mogą być w nim zawarte. Najbardziej użyteczne
wydaje się przechowywanie domyślnych parametrów połączenia z serwerem. Przedstawimy
teraz sekcję client, która powoduje automatyczne podłączenie się do serwera MySQL uru-
chomionego na komputerze gw1. Zwykle korzystam w tym celu z użytkownika rick z hasłem
secret, a następnie wybieram bazę danych bmsimple:
300 Bazy danych i MySQL. Od podstaw
Zwróć uwagę na wiersz, w którym wpisane jest słowo password bez znaku = (znaku rów-
ności) ani wartości. Nie chcemy przechowywać hasła w pliku (choć moglibyśmy tu wpisać
password=secret); w ten sposób wskazujemy programowi mysql, że powinien zapytać o hasło.
Jeżeli nie wpiszemy wiersza zawierającego password, otrzymamy następujący wynik:
Ponieważ mysql założył, że hasło nie jest wymagane, otrzymaliśmy komunikat o wystąpieniu
błędu. Jeżeli dodamy wiersz password, mysql spyta o hasło.
Program klienta widzi wartości zapisane w tej sekcji, tak jakby były one podane w wierszu
poleceń z prefiksem , na przykład:
Wyłączanie wartości domyślnych
Choć podawanie wartości domyślnych w pliku my.ini lub ~/.my.cnf jest bardzo wygodne,
istnieją przypadki, gdy niezbędne jest tymczasowe zignorowanie podanych wartości domyśl-
nych. Czasami może wystąpić problem, jeżeli w pliku konfiguracyjnym podamy rzadziej
używaną opcję, na przykład i uruchomimy pogram, na przykład mysqldump, który
nie rozpoznaje takiej opcji. Sytuacja taka jest dosyć myląca, ponieważ uruchamiasz program
bez parametrów, a otrzymujesz komunikat o błędzie oznajmiający, że podałeś nieprawi-
dłowy parametr.
Dzieje się tak dlatego, że wszystkie pogramy mysql& odczytują parametry z sekcji client
i jeżeli program nie zinterpretuje któregoś z parametrów, zwraca komunikat o błędzie. Aby
rozwiązać ten problem, należy użyć parametru , który powoduje wyłączenie
odczytu zmiennych konfiguracyjnych z pliku my.ini lub ~/.my.cnf.
Na przykład, pozostawiając niezmieniony plik my.ini, który zawiera domyślne połączenie
z serwerem na komputerze z Linuksem, dzięki wyłączeniu domyślnych wartości możemy
wywołać program mysql, aby połączył się z lokalnym serwerem:
Rozdział 10. Administrowanie MySQL 301
Pliki InnoDB
We wcześniejszych rozdziałach tej książki wykorzystywaliśmy już typ tabel InnoDB, ponieważ
posiada on obsługę transakcji i kluczy obcych, których to opcji nie ma w domyślnym typie
tabel MyISAM.
Aby skorzystać z tabel typu InnoDB musisz sprawdzić, czy używany program serwera obsłu-
guje ten typ. Musisz również utworzyć tabelę typu InnoDB, dodając do instrukcji
klauzulę lub określając domyślny typ tabel.
Aby ustawić domyślny typ tabel na InnoDB, należy dodać do sekcji w pliku c:\my.cnf
(w Windows) lub /etc/my.cnf (w Linuksie) wiersz:
Spowoduje to, że od tego momentu wszystkie tworzone tabele będą miały typ InnoDB.
Musisz jeszcze sprawdzić dwie opcje w sekcji . Sprawdz, czy opcje
i wskazują na istniejące katalogi. Jeżeli wpisy te są nieprawidłowe, proces serwera
może nie uruchomić się prawidłowo.
Istnieje wiele parametrów konfiguracyjnych związanych z tabelami InnoDB, zawartych
w sekcji [mysqld] pliku konfiguracyjnego, dla których można pozostawić domyślne wartości.
Jeżeli posiadasz zródła dla systemu Linux, możesz przejrzeć ustawienia w kilku przykła-
dowych plikach konfiguracyjnych, które mogą dostarczyć Ci informacji niezbędnych do
precyzyjnej konfiguracji serwera. Opiszemy tutaj tylko najważniejsze opcje. Pełna ich lista,
wraz z dokładnym opisem, znajduje się w podręczniku InnoDB, który można znalezć pod
adresem http://www.innodb.com/ibman.html. Domyślne ustawienia tabel InnoDB spraw-
dzają się bardzo dobrze, więc jeżeli nie jesteś pewien zmian, które wprowadzasz, pozostaw
lepiej domyślne wartości opcji.
W tabeli na następnej stronie zamieszczamy krótkie omówienie opcji konfiguracji dla sys-
temu średniej wielkości. Opcje te są zawarte w przykładowych plikach konfiguracyjnych
systemu Linux. Instalacja dla Windows posiada własne, podobne do przedstawionych w tym
miejscu, domyślne wartości zmiennych konfiguracji.
W czasie pierwszego uruchomienia serwera po zmianie parametrów konfiguracji tabel In-
noDB można zauważyć opóznienie w uruchomieniu, ponieważ tworzone są pliki danych.
Rozwiązywanie problemów
Zdarza się, że w czasie pracy bazy danych występują problemy, na przykład uszkodzenie
danych. Jeżeli korzystasz z tabel typu InnoDB, serwer usiłuje automatycznie naprawiać te
problemy o ile jest to możliwe. Jeżeli korzystasz z tabel MyISAM, naprawianie uszko-
dzeń nie następuje automatycznie, ale można skorzystać z programu myisamchk, który
umożliwia naprawienie tabel oraz dostarcza informacji na temat wewnętrznych struktur ta-
beli. Nie powinieneś uruchamiać tego programu, jeżeli nie występują problemy, chyba że
użyjesz parametru , który powoduje wyświetlenie informacji o tabeli. Przed uruchomie-
niem myisamchk należy zatrzymać serwer bazy danych. W opcjach wywołania należy rów-
nież podać ścieżki do plików, które trzeba naprawić.
302 Bazy danych i MySQL. Od podstaw
Opcja Znaczenie
Ustawia nazwę i rozmiar pliku, który będzie wykorzystywany
przez InnoDB do przechowywania danych. Plik ten będzie
przechowywany w katalogu określonym przez zmienną
i będzie miał wielkość 400 MB. W InnoDB wszystkie
tabele są przechowywane w pliku, który nie może być zwiększany;
zamiast tego można dodawać kolejne pliki. Jeżeli możesz określić
końcową wielkość danych, możesz spróbować podać wielkość
pliku, w którym zmieszczą się wszystkie dane
Ustawia ścieżkę do katalogu z plikami InnoDB. W Windows należy
użyć standardowego formatu ścieżki np.:
Ustawia ścieżkę do katalogu, w którym tabela InnoDB będzie
przechowywała pliki śladu bazy danych. W Windows należy
użyć formatu zgodnego z używanym w tym systemie
Ustawia ścieżkę do katalogu z archiwalnymi plikami śladu.
Jak poprzednio, w Windows należy użyć formatu zgodnego
z używanym w tym systemie
Zmienna ta powinna mieć zawsze wartość 1
Ilość używanych plików śladu. Zaleca się użycie trzech plików
Rozmiar pliku śladu. Plik ten powinien mieć co najmniej 1 MB, ale
im większy jest jego rozmiar, tym lepszą można osiągnąć wydajność
Ilość danych transakcji buforowanych przed ich zapisem na dysk.
Wartość ta nie powinna przekraczać
i jeżeli nie przewidujesz bardzo dużych
i długo trwających transakcji, wystarczy nawet mniejsza wartość
Zmienna powinna mieć wartość 1
Zmienna powinna mieć wartość 0
Określa ilość pamięci używanej do buforowania. Wartość ta nie
powinna przekraczać 80% ilości zainstalowanej pamięci, nawet
na komputerze przeznaczonym jedynie do pracy z MySQL
Ilość pamięci przeznaczonej do przechowywania słownika danych.
W przypadku bardzo skomplikowanych baz danych z dużą ilością
tabel należy zwiększyć tę wartość
Zmienna powinna mieć wartość 4
[ Pobierz całość w formacie PDF ]