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

Mysql mění výchozí engine

Změna hodnoty proměnné default_storage_engine nemá žádný vliv na existující tabulky. Jediné, co dělá, je vytvářet nové tabulky s modulem, který jste zadali v této proměnné, když jej nezadáte v create table tvrzení. Je to pouze výchozí hodnota.

Také mějte na paměti, že musíte rozlišovat mezi global a session proměnné hodnoty. Chcete-li mít MyISAM skutečně jako výchozí, kdykoli vytvoříte novou tabulku, a nejen pro aktuální relaci, postupujte takto:

SET GLOBAL  default_storage_engine=MYISAM;

Pokud chcete zachovat proměnnou na této hodnotě i po restartu serveru, musíte do výchozího souboru my.cnf vložit následující řádek v sekci [mysqld]

default_storage_engine = MYISAM

Chcete-li převést své aktuální tabulky na MyISAM, proveďte toto pro každou tabulku:

ALTER TABLE table_name ENGINE=MyISAM;

Ale mějte na paměti, že vaše omezení cizího klíče již nebude fungovat, protože MyISAM jej nepodporuje. Nebude si stěžovat, jen to bude ignorovat. Takže si raději buďte jistí, víte, co děláte :)



  1. Vynutit instalaci Postgresu s kódováním UTF8, nikoli LATIN1?

  2. SQL Server 2008 nainstalovaný, i když běžící verze je stále 2005

  3. ORA-12705:Nelze získat přístup k datovým souborům NLS nebo neplatnému prostředí

  4. co je max(rowid) v oracle