无交易生活(MyISAM)
我的网站在VDS服务器上运行。我刚发现我的MySQL服务器不支持InnoDB引擎,因此我无法在我的应用程序中使用数据库事务。无交易生活(MyISAM)
这让我想到,有些人可能永远不会使用交易。是这样吗?如果是这样,在MyISAM中,如何协调相关的操作?
否则,有没有办法将InnoDB安装在运行在VDS上的MySQL服务器上?
谢谢!
如果您需要交易,那么您需要交易,MyISAM不会削减芥末。
某些应用程序不需要事务处理。例如;一次从不运行多个相关SQL语句并且不需要回滚多个SQL语句的应用程序。另一个例子是使用MySQL作为简单键值存储的应用程序。有许多用例不需要数据库级别的事务支持。
很难在不了解VDS的更多细节的情况下回答问题的第二部分。你是谁托管供应商?你有shell访问权限和更改my.cnf的权限吗?如果没有,那么你可能无法启用InnoDB。如果你这样做,那么这里有另一个SO答案,详细说明如何在MySQL上启用InnoDB:How to enable INNODB in mysql
谢谢!我只是在** my.cnf **中将'skip-innodb'改成'innodb = ON',转换了我的表格,现在一切正常! – Webmezha
你通常可以启用引擎,手动安装InnoDB组件,或者重新安装包含MySQL的版本该引擎默认。 MyISAM是crazypants数据库,如果你的系统没有正常关闭,它愚蠢快速,但也不可靠并且容易完全破坏。
在MyISAM上运行关键任务应用程序是一个非常糟糕的主意。在出于性能原因需要MyISAM表格的地方,它们应该始终是一次性的,可以从另一个更可靠的数据源重建。
您的VDS与您的主机提供商是谁? – theon
VDS64.com - 这些人很棒。 – Webmezha