相关疑难解决方法(0)

MyISAM与InnoDB

我正在研究涉及大量数据库写入的项目,我会说(70%的插入和30%的读取).该比率还包括我认为是一次读取和一次写入的更新.读取可能很脏(例如,在读取时我不需要100%准确的信息).
有问题的任务将是每小时进行超过100万次数据库事务.

我在网上看到了一些关于MyISAM和InnoDB之间差异的东西,对于我将用于此任务的特定数据库/表格来说,MyISAM似乎是我的明显选择.从我似乎正在阅读的内容来看,如果需要事务处理,InnoDB很好,因为支持行级锁定.

有没有人有这种负载(或更高)的经验?MyISAM是走的路吗?

mysql database performance myisam innodb

853
推荐指数
16
解决办法
29万
查看次数

何时使用MyISAM和InnoDB?

MyISAM的设计理念是,您的数据库查询的次数远远超过其更新的数据,因此它可以执行非常快速的读取操作.如果您的读写(插入|更新)比率小于15%,则使用MyISAM更好.

InnoDB使用行级锁定,具有提交,回滚和崩溃恢复功能来保护用户数据.它支持事务和容错

以上MyISAM和InnobDB之间的差异是否正确?如果MYISAM和InnobDB有任何其他限制,请指导.我应该何时使用MyiSAM或何时使用Innodb?谢谢!

mysql database database-schema

126
推荐指数
2
解决办法
17万
查看次数

禁用Doctrine外键约束

我和我的一个模特有关系:

/**
* @ORM\ManyToOne(targetEntity="Page", cascade="persist")
* @ORM\JoinColumn(name="page_id", referencedColumnName="id")
*/
private $parentPage;
Run Code Online (Sandbox Code Playgroud)

当我删除父页面时,我收到此错误:

Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails
Run Code Online (Sandbox Code Playgroud)

基本上我的模型是页面和页面修订版.当我删除页面时,我不想删除修订.我还想保留page_id页面修订版(即不将其设置为null).

我怎么能用Doctrine做到这一点?

php mysql symfony doctrine-orm

8
推荐指数
1
解决办法
8312
查看次数

InnoDB和MyISAM之间的区别?

可能重复:
MyISAM与InnoDB

好的,我读过维基百科和InnoDB的这些信息似乎更好.这是我的问题是否可以使用InnoDB而不是MyISAM从数据库中选择用户数据?或者与MyISAM保持联系会更好.

如果我要改为Inno PDO仍然可以使用它和一些旧式查询?

$q = ("SELECT * ... );
$r = mysql_query($q);
Run Code Online (Sandbox Code Playgroud)

mysql myisam innodb

2
推荐指数
1
解决办法
3万
查看次数

每秒超过100次插入查询使用哪个引擎

每秒超过100次插入查询使用哪个引擎

我阅读了 MYISAM 和 Innodb 的差异和优缺点。
但我仍然对表中的 100 多个插入查询(主要用于跟踪目的)感到困惑,我应该使用哪个数据库。

我参考了MyISAM和InnoDB有什么区别?
根据我的理解,对于每次插入,MYISAM 都会锁定表,因此应该使用 innodb 进行行锁定。
但另一方面,MYISAM 的性能要好 100 倍。


那么最佳且正确的选择应该是什么?为什么?

mysql myisam innodb

1
推荐指数
1
解决办法
1608
查看次数