mysql – webhost不支持InnoDB.现在怎么办?
作者:互联网
我正在我的笔记本电脑上开发一个小型WAMP Web应用程序,我在其中运行了mySQL实例,并为数据库引擎选择了InnoDB.经过几个星期的开发,我想向公众开放,发现我的网站主机提供的数据库服务器不支持InnoDB,只支持MyISAM.
从我的笔记本电脑上的innoDB架构生成的create-and-populate脚本,当针对实时数据库执行时,可以设法创建单独的TABLES,但后来遇到创建VIEW的问题. MyISAM不支持视图吗?我知道FOREIGN KEYs不是.这就是为什么我选择InnoDB的原因…我的innoDB架构设计与myISAM一起工作的机会是什么?
有没有直接的方法将整个架构从一个存储引擎转换到另一个?我应该寻找另一个提供支持innoDB的mysql数据库的Web主机吗?
解决方法:
你的选择:
>询问您的网络托管服务提供商是否可以在他们的服务器上启用InnoDB(有时他们会为您执行此操作或将您的帐户移至支持InnoDB的服务器).
>获得InnoDB支持的新网络托管服务提供商.
>在PHP中处理外键依赖关系(例如,您可以使用Zend_Db和Zend_Db_Table来处理数据库,如果您正确设置它们,这些类可以自动处理外键依赖关系).
>将您的应用程序转换为MyISAM表.
就个人而言,我认为4号是最糟糕的解决方案.现在有很多网站托管服务提供商支持InnoDB,因此浪费时间重新编写大部分应用程序以使用MyISAM.当然,这取决于应用程序的大小和复杂程度.如果它相对较小,那可能不是一个坏主意.
我可能会寻找一个新的网络托管服务提供商.
标签:mysql,views,innodb,myisam,web-hosting 来源: https://codeday.me/bug/20190726/1546795.html