我知道答案可能是绝对不!但是,为了重复检查,如果您已经将多个程序链接到目前使用MySAM引擎的不同MySAM表,然后我将引擎更改为InnoDB,这是否会影响数据库之外的任何内容?比如无法检索数据、插入数据、调用存储过程等等。
软件可以使用不同的语言,如PHP、JAVA、Visual、.Net等。
发布于 2016-01-14 17:35:12
在从MyISAM切换到InnoDB时,有几十个不同的地方需要考虑。他们是在此列举。
正如你所说,答案是“不”。但是,可能会有一些东西从MySQL泄露回客户端。FULLTEXT
的工作方式并不完全相同。在某些情况下,可以使用InnoDB获得0的结果,但不能使用MyISAM。有些事情可能会花费更长的时间,特别是如果您没有像上面的链接所示的那样调整索引的话。LOCK TABLES
应该由BEGIN
(等)代替;这涉及到客户端代码。InnoDB的磁盘空间明显更大。
是的,key_buffer_size
应该降低到,比如说,40M;innodb_buffer_pool_size
应该设置为大约70%的可用内存。这是一个很大的性能问题。
发布于 2016-01-14 15:23:21
不是的。唯一需要检查的是,代码中是否有任何内容可以创建表并直接指导引擎(类似于ENGINE=MyISAM)。
添加:及官方手册http://dev.mysql.com/doc/refman/5.7/en/converting-tables-to-innodb.html
https://stackoverflow.com/questions/34801624
复制