我正在開發一個Web應用程序,我計劃使用InnoDB。然而,我讀到有時InnoDB默認情況下未啓用,需要更改mysql配置才能啓用它......這是真的嗎?由於我的網絡應用程序將由客戶自己在自己的網絡空間安裝,因此我需要確保我的應用程序儘可能兼容。如果InnoDB默認禁用,那麼我必須尋找解決方法。MySQL中默認啓用了INNODB嗎?
2
A
回答
5
InnoDB自MySQL 4.0以來一直存在,並且編譯到大多數版本中,除了一些特殊版本之外 - 比如給OEM廠商的東西。
一些(非常便宜的)託管服務提供商選擇禁用它,因爲它使用了更多的內存。儘管它們大部分都是少數,所以你不必擔心。
「默認存儲引擎」的措辭也不需要關注你。這只是意味着當你沒有指定一個時會發生什麼。即
CREATE TABLE my_table (a int);
- instead of -
CREATE TABLE my_table (a int) ENGINE=INNODB;
如果從mysqldump恢復,它將保留ENGINE信息。如果InnoDB不存在,MySQL將自動替換MyISAM(除非您更改默認的sql_mode以避免此替換)。
3
您可以檢查,看看是否你的服務器,通過使用支持InnoDB的:
我也讀:
「在Windows必備的安裝程序做的InnoDB在Windows上MySQL的默認存儲引擎,如果安裝的服務器支持InnoDB。「
0
從MySQL 5.5時,InnoDB是默認的存儲引擎(所以它會被啓用): http://dev.mysql.com/doc/refman/5.5/en/innodb-default-se.html
1
您可以通過SSH訪問你的服務器根目錄(或其他帳戶,然後使用su或sudo來使InnoDB
獲得根訪問權限)。一旦做到這一點,檢查的/etc/my.cnf像一個條目:
skip-inndob
如果這樣的條目存在,刪除或註釋掉的條目並重啓MySQL。 如果這樣的條目不存在,那麼還有其他問題,我們需要更多的信息。
一旦InnoDB的啓用,可以通過指定其設置爲默認的表型的my.cnf文件以下
default-table-type=innodb
相關問題
- 1. 在MySQL中啓用InnoDB
- 2. 將mysql默認引擎更改爲innodb
- 3. 默認值 - InnoDB的
- 4. 在g ++中默認啓用sse2嗎?
- 5. 默認啓用
- 6. 啓用默認
- 7. 如何在mysql中啓用INNODB
- 8. 如何使默認引擎在MySQL中是InnoDB?(批)
- 9. gcc 4.8.1默認啓用sse嗎?
- 10. MySQL默認數據庫以及如何使現有的非InnoDB成爲InnoDB
- 11. 將MySQL默認表引擎從MyISAM更改爲InnoDB
- 12. 如何使Navicat mySQL(Non-Commercial)表默認爲InnoDB引擎?
- 13. MySQL默認與MariaDB默認
- 14. 澄清 - 默認外鍵約束 - InnoDB的
- 15. 如何使innodb成爲默認引擎
- 16. 默認Unity Sky盒子改變了嗎?
- 17. MYSQL觸發了默認值的屬性
- 18. bugzilla安裝錯誤:「InnoDB已禁用您的MySQL安裝,Bugzilla需要啓用InnoDb。」即使innodb已啓用
- 19. 默認情況下,所有webbrowsers中都啓用了JavaScript?
- 20. 是IBM J9 JVM中默認啓用的環境變量IBM_HEAPDUMP嗎?
- 21. 默認Solr啓用分組
- 22. mysql默認值?
- 23. mysql默認值
- 24. MySQL默認max_connections
- 25. 當使用Express和Mongoose時默認啓用了什麼緩存
- 26. 我可以在MySql中使用函數作爲默認值嗎?
- 27. 在elasticsearch中啓用默認時間戳
- 28. 在magento中默認啓用新產品
- 29. MySQL的InnoDB引擎重新啓動
- 30. MySQL「記得」刪除了InnoDB表