如果我需要关闭linux服务器mysql数据库上的交换,以便增加交换空间的大小,那么数据库会发生什么情况呢?
数据库正在使用所有8GB的交换空间。将数据库交换提高到16 be的最佳方法是什么?
它有16 8GB的内存和1的交换空间,它消耗掉了所有的8GB交换空间,难道它不也消耗掉16 8GB的交换空间吗?
发布于 2020-02-05 11:12:28
添加交换没有单一的解决方案,这取决于您的目标。只要在调整底层块设备的大小之前禁用交换,就不会丢失数据(但如果没有足够的内存,则可能导致系统崩溃)。
您可以拥有更多的交换文件/设备,因此另一种选择是简单地添加第二个交换设备,而无需删除现有的交换。您还可以创建一个新的临时交换,启用它,然后禁用现有的交换,调整它的大小,启用它和禁用临时交换。这将严重影响性能时,进程正在进行,但可以做到不停机。
发布于 2020-03-14 00:11:40
用MySQL交换性能是很糟糕的。最好是减少设置,使MySQL根本不交换。请提供my.cnf的内容;问题可能是显而易见的。
MySQL假设它在RAM中有很多很容易访问的东西,所以它不考虑扫描整个(比如“表缓存”或“缓冲池”)。如果您正在交换,这将导致大量I/O。
https://serverfault.com/questions/1001863
复制相似问题