我想开始集群我的 PHP 应用程序服务器,但此时不想进行粘性会话负载平衡设置。但是,我想要持久保存到磁盘并实施适当锁定的会话。我有一个专用于数据库的服务器,有足够数量的免费内存,所以我想考虑在同一台机器上使用一个额外的 MySQL 实例纯粹用于会话存储。目前我在文件系统上的会话文件夹是 ~131Mb 并且有 ~23k 文件。我打算将 InnoDb 与 SELECT ... FOR UPDATE 一起使用来实现会话锁定。
在同一台服务器上运行两个针对不同目的优化的 MySQL 实例是不是一个坏主意?(如果是,为什么?)
对于仅限会话的实例,有哪些优化技巧?我希望它是持久的,但不介意在发生灾难时丢失一点数据,而对于主应用程序数据库,我不想冒任何数据丢失的风险。
如果我可以为这个 MySQL 实例腾出 256Mb 的 ram(主实例有 ~6Gb),我应该如何分配它?
是否禁用查询缓存?
我可以使用哪些设置来减少磁盘写入(因为我不太关心这个实例的耐用性)?例如 innodb_locks_unsafe_for_binlog、innodb_flush_method 等。