Men som standard er InnoDB MySQL-databaselagringsmotor ikke aktiveret i my.cnf-konfigurationsfilen. Hvis en webmaster planlægger at bruge InnoDB-funktioner, såsom en til mange eller mange til mange tabelrelationer på fremmednøglebegrænsninger, eller transaktionssikre kommandoer såsom commit, rollback og crash recovery-funktioner.
For at aktivere understøttelse af MySQL-server på InnoDB-lagringsmotor, skal du finde "my.cnf"-konfigurationsfilen (normalt i /installation_path /xampp/mysql/bin/ bibliotek), og rediger my.cnf med en hvilken som helst teksteditor, såsom vi.
Søg og find hver af de følgende linjer (undtagen linjerne i kursiv hvor de er kommentarer):
- Kommenter følgende linje for at springe over og bruge InnoDB skip-innodb - Fjern kommentarer til følgende muligheder for InnoDB-databasen, hvis du bruger InnoDB-tabeller. #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_amp_arch_dir/ql - Fjern kommentering af linjerne og indstil innodb_buffer_pool_size op til 50 % - 80 % af RAM for optimering af InnoDB-databaser, prøv ikke at bruge for højt hukommelse. #set-variable =innodb_buffer_pool_size=16M #set-variable =innodb_additional_mem_pool_size=2M - Fjern kommentering af linjerne, og indstil innodb_log_file_size til 25 % af InnoDB-bufferpuljens størrelse for optimering. #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
Efter ændring skal koden for hver linje se sådan ud:
# 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/ innodb_log =C:/xampp/xampp/mysql/data/ innodb_log/mysql/innodb_log C:lxamp_q/my /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_buffer_size=8M innodb_flush_tid_variabel_at_trod=innodb_flush_log_commit_trit=pre_flush_time_0Når InnoDB ikke er aktiveret, og MySQL bruger MyISAM-databaselagringsmotoren i stedet, er nogle fejl, der kan returneres:
Udefineret GET-egenskab eller variabel i 'A_Class'-klassen:A_Class_Object
Fatal fejl:Kald til udefineret metode Objekt::Function() i /xampp/htdocs/wwwroot/a_page.php på linje 87