Jednak domyślnie silnik przechowywania bazy danych InnoDB MySQL nie jest włączony w pliku konfiguracyjnym my.cnf. Jeśli webmaster planuje używać funkcji InnoDB, takich jak relacje jeden do wielu lub wiele do wielu w ograniczeniach klucza obcego lub polecenia bezpieczne dla transakcji, takie jak zatwierdzanie, wycofywanie i odzyskiwanie po awarii.
Aby włączyć obsługę serwera MySQL w silniku pamięci masowej InnoDB, znajdź plik konfiguracyjny „my.cnf” (zwykle w /ścieżka_instalacji /xampp/mysql/bin/) i edytuj plik my.cnf z dowolnym edytorem tekstu, takim jak vi.
Wyszukaj i zlokalizuj każdy z następujących wierszy (poza wierszami zaznaczonymi kursywą gdzie są komentarze):
- Skomentuj następujący wiersz, aby cofnąć pominięcie i użyć InnoDB skip-innodb - Usuń komentarz z następujących opcji bazy danych InnoDB, jeśli używasz tabel InnoDB. #innodb_data_home_dir =C:/xampp/xampp/mysql/data/ #innodb_data_file_path =ibdata1:10M:autoextend #innodb_log_group_home_dir =C:/xampp/xampp/mysql/data/ #innodb_log/q/xamp_dir - Odkomentuj wiersze i ustaw innodb_buffer_pool_size na 50% - 80% pamięci RAM do optymalizacji baz danych InnoDB, staraj się nie wykorzystywać zbyt dużej ilości pamięci. #set-variable =innodb_buffer_pool_size=16M #set-variable =innodb_additional_mem_pool_size=2M - Odkomentuj wiersze i ustaw innodb_log_file_size na 25% rozmiaru puli buforów InnoDB w celu optymalizacji. #set-variable =innodb_log_file_size=5M #set-variable =innodb_log_buffer_size=8M #innodb_flush_log_at_trx_commit=1 #set-variable =innodb_lock_wait_timeout=50
Po modyfikacji kod dla każdej linii powinien wyglądać tak:
# skip-innodb innodb_data_home_dir =C:/xampp/xampp/mysql/data/ innodb_data_file_path =ibdata1:10M:autoextend innodb_log_group_home_dir =C:/xampp/xampp/mysql/data/Camplx/sampplog =/data/ set-variable =innodb_buffer_pool_size=16M set-variable =innodb_additional_mem_pool_size=2M set-variable =innodb_log_file_size=5M set-variable =innodb_log_buffer_size=8M innodb_flush_log_at_trxable_commit=1 set-timeGdy InnoDB nie jest włączone, a MySQL używa zamiast tego mechanizmu przechowywania bazy danych MyISAM, niektóre błędy, które mogą zostać zwrócone, obejmują:
Niezdefiniowana właściwość lub zmienna GET w klasie „A_Class”:A_Class_Object
Błąd krytyczny:wywołanie niezdefiniowanej metody Object::Function() w /xampp/htdocs/wwwroot/a_page.php w wierszu 87