Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql Linux服务器交换_Mysql_Linux_Performance_Centos - Fatal编程技术网

Mysql Linux服务器交换

Mysql Linux服务器交换,mysql,linux,performance,centos,Mysql,Linux,Performance,Centos,我注意到我们的服务器交换使用了98.66%(200万台中的1973240台)。减少这种情况的任何提示。仅作为背景,我有一个 CentOs 6.6 Rack Server 1.92 (24 core) processors 48Gig ram 我们使用它做了一些非常繁重的数据库(MySql)工作,它驻留在240gig SSD上。我们还做了大量的文件写入工作,例如,今天我不得不修复一些问题,因为我们使用了99%的2Tb主驱动器,我们还有160gb SSD用于写入报告文件。它通常在73%的ra

我注意到我们的服务器交换使用了98.66%(200万台中的1973240台)。减少这种情况的任何提示。仅作为背景,我有一个

 CentOs 6.6 Rack Server
 1.92 (24 core) processors
 48Gig ram
我们使用它做了一些非常繁重的数据库(MySql)工作,它驻留在
240gig SSD上。我们还做了大量的文件写入工作,例如,今天我不得不修复一些问题,因为我们使用了99%的
2Tb主驱动器,我们还有
160gb SSD
用于写入报告文件。它通常在
73%的ram使用率和
300%的cpu使用率下运行。因此,任何帮助都将是美妙的。就像我说的,我们用它做了很多工作。例如,大约每小时数据库流量
5.2Gb

哎呀,我以为我把这个放在服务器上了,但我看不到移动它的方法


谢谢,

MySQL在交换时性能非常差

48GB——这是怎么回事?主要是MySQL吗?如果是这样,让我们看看如何减少MySQL中的缓存以避免交换

如果您使用的是InnoDB,请将
InnoDB\u buffer\u pool\u size
设置为大约70%的可用ram。和
键缓冲区大小
至20M

如果您正在使用MyISAM;好吧,不要。(如果需要,我会详细说明。)

73%的内存听起来你并没有真正交换


300%的CPU听起来像是有些非MySQL应用程序受到CPU的限制,或者有些查询速度较慢。如果是后者,我们来看看;我们可能能够改进它们。

我们同时使用InnoDB和MyIsam,我们有mysql 5.5,没有全文搜索,缓冲池设置为30GB,密钥缓冲区设置为1.5GB。这是一个专用服务器,因此我们对其进行了非现场管理。他们说
35G实际使用量
如果您的服务器正在积极写入交换,而不是。
,我主要在上面进行设置,但我们确实得到了他们的支持。我认为这可能是由于高磁盘使用率造成的,在2T的使用率中,磁盘使用率为99%,我将其降低到47%。现在检查它实际上是在
100%(2000000/2000000)
这是通过whm进行的,所以这可能只是一个骗局。如果它落后,那么我们可能在高峰使用时间达到100%。那看起来有用吗?我也非常感谢你抽出时间。无需详细说明MyISAM,它是出于必要而使用的,好吧,我告诉你,我需要设置一些类似Sphinx的东西,全文是必须的,我们做数百万的全文查询,没有办法,因为我无法安装更新的MySql(半托管的东西)。我可能可以,但他们不会给我们支持。300%是因为csv文件,我们所做的是让客户搜索或我们聚合的数据库(我不能给出具体细节),他们使用csv文件来做这件事,其中一些是数百万行的,我们从中生成数百万行的报告。我最近用RabbitMq和MapReduce样式的设置重建了它(现在还不完全满意)。虽然总有改进的余地,但我想说,我至少处于PHP/MySql/Jquery专家级别的低端。我可能很快会添加Sphinx和Casandra(用于缩减),并从文件块到单独的行。Ugg这太长了,实际上我在查看这些文件时,正在转储大约1TB的垃圾/旧文件。这可能就是为什么它如此之多。是否以字节(2MB)为单位使用了“交换”?KB(2GB)?操作系统页面(8GB)?或者其他单元?除了MySQL的内存调优,请看@Nemo-这个问题已经有3年了,我们感觉到服务器发生了变化,我们现在使用mongoDB处理这些数据,等等。当MySQL中有1.2亿行时,就会发生这种情况。我很欣赏你的评论,但在这一点上,这只是个轶事。