sql >> Database teknologi >  >> RDS >> Mysql

Aktiver MySQL InnoDB Storage Engine Support i XAMPP-installation

XAMPP fra Apache Friends er en samling af gratis open source-apps, der gør det nemt at installere Apache-distribution, der indeholder MySQL, PHP og Perl. Der er fire XAMPP-distributioner til Windows, Linux, Mac OS X og Solaris. For at konfigurere en Apache-webserver med XAMPP skal du blot downloade og udpakke XAMPP, og Apache HTTPD-webserveren er klar efter et eller to flere auto-eksekvere scripts. Der er ingen ændringer i Windows-registreringsdatabasen (medmindre du bruger Widows-installationsversionen af ​​XAMPP), og det er ikke nødvendigt at redigere nogen konfigurationsfiler.

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_0 

Nå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


  1. Er mine MySQL-serverforbindelser krypteret og sikre?

  2. Send e-mail fra en trigger i SQL Server (T-SQL)

  3. Sådan importeres CSV til MySQL Workbench

  4. Afmystificere CXPACKET og CXCONSUMER ventetyper i SQL Server