sql >> Databáze >  >> RDS >> Mysql

Povolte podporu MySQL InnoDB Storage Engine v instalaci XAMPP

XAMPP od Apache Friends je sbírka bezplatných open source aplikací, které usnadňují instalaci distribuce Apache obsahující MySQL, PHP a Perl. Existují čtyři distribuce XAMPP pro Windows, Linux, Mac OS X a Solaris. Chcete-li nastavit webový server Apache s XAMPP, jednoduše si stáhněte a extrahujte XAMPP a webový server Apache HTTPD je připraven po jednom nebo dvou dalších automaticky spouštěných skriptech. V registru Windows nejsou žádné změny (pokud nepoužíváte instalační verzi XAMPP Widows) a není nutné upravovat žádné konfigurační soubory.

Ve výchozím nastavení však není databázové úložiště InnoDB MySQL v konfiguračním souboru my.cnf povoleno. Pokud webmaster plánuje používat funkce InnoDB, jako jsou vztahy mezi tabulkami jedna k mnoha nebo mnoho k mnoha na omezení cizích klíčů nebo příkazy bezpečné pro transakce, jako jsou možnosti potvrzení, vrácení zpět a obnovení po havárii.

Chcete-li povolit podporu serveru MySQL na úložišti InnoDB, vyhledejte konfigurační soubor „my.cnf“ (obvykle v /instalační_cesta /xampp/mysql/bin/) a upravte my.cnf pomocí libovolného textového editoru, jako je například vi.

Vyhledejte a najděte každý z následujících řádků (kromě řádků v kurzíva kde jsou komentáře):

- Komentář k následujícímu řádku zrušíte a použijete InnoDB skip-innodb - Pokud používáte tabulky InnoDB, odkomentujte následující možnosti pro databázi 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/ #/x_ampdampx_sqarch_arch. - Odkomentujte řádky a nastavte innodb_buffer_pool_size až na 50 % - 80 % RAM pro optimalizaci databází InnoDB, snažte se, aby využití paměti nebylo příliš vysoké. #set-variable =innodb_buffer_pool_size=16M #set-variable =innodb_additional_mem_pool_size=2M - Odkomentujte řádky a nastavte innodb_log_file_size na 25 % velikosti fondu vyrovnávací paměti InnoDB pro optimalizaci. #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 úpravě by kód pro každý řádek měl vypadat takto:

# 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/mysqampl/mysql/data/inno /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_loglock_buffer_size=8M innodb_trxit_comt_dbat_5_prexit =set-dbat_0

Když InnoDB není povoleno a MySQL používá místo něj databázový úložný modul MyISAM, mohou být vráceny některé chyby:

Nedefinovaná vlastnost nebo proměnná GET ve třídě ‚A_Class‘:A_Class_Object

Závažná chyba:Volání nedefinované metody Object::Function() v /xampp/htdocs/wwwroot/a_page.php na řádku 87


  1. SQL Server ZOBRAZIT TABULKY Ekvivalent

  2. SYSDATE() vs NOW() v MySQL:Jaký je rozdíl?

  3. Nasazení MySQL Galera Cluster 4.0 na Amazon AWS EC2

  4. Serializovatelná úroveň izolace