찾다
데이터 베이스MySQL 튜토리얼mySQL占用虚拟内存达8百多兆问题解决思路

为了装mysql环境测试,装上后发现启动后mysql占用了很大的虚拟内存,达8百多兆,需要的朋友可以参考下

为了装mysql环境测试,装上后发现启动后mysql占用了很大的虚拟内存,达8百多兆。网上搜索了一下,得到高人指点my.ini。再也没见再详细的了..只好打开my.ini逐行的啃,虽然英文差了点,不过多少M还是看得明的^-^

更改后如下
innodb_buffer_pool_size=576M ->256M InnoDB引擎缓冲区占了大头,首要就是拿它开刀
query_cache_size=100M ->16M 查询缓存
tmp_table_size=102M ->64M 临时表大小
key_buffer_size=256m ->32M

重启mysql服务后,虚拟内存降到200以下
另外mysql安装目录下有几个文件:my-huge.ini 、my-large.ini、my-medium.ini...这几个是根据内存大小作的建议配置,新手在设置的时候也可以参考一下。
2G内存的MYSQL数据库服务器 my.ini优化 (my.ini)
2G内存,针对站少,优质型的设置,试验特:
table_cache=1024 物理内存越大,设置就越大.默认为2402,调到512-1024最佳
innodb_additional_mem_pool_size=8M 默认为2M
innodb_flush_log_at_trx_commit=0 等到innodb_log_buffer_size列队满后再统一储存,默认为1
innodb_log_buffer_size=4M 默认为1M
innodb_thread_concurrency=8 你的服务器CPU有几个就设置为几,默认为8
key_buffer_size=256M 默认为218 调到128最佳
tmp_table_size=64M 默认为16M 调到64-256最挂
read_buffer_size=4M 默认为64K
read_rnd_buffer_size=16M 默认为256K
sort_buffer_size=32M 默认为256K
max_connections=1024 默认为1210

试验一
table_cache=512或1024
innodb_additional_mem_pool_size=2M
innodb_flush_log_at_trx_commit=0
innodb_log_buffer_size=1M
innodb_thread_concurrency=8 你的服务器CPU有几个就设置为几,默认为8
key_buffer_size=128M
tmp_table_size=128M
read_buffer_size=64K或128K
read_rnd_buffer_size=256K
sort_buffer_size=512K
max_connections=1024

试验二
table_cache=512或1024
innodb_additional_mem_pool_size=8M
innodb_flush_log_at_trx_commit=0
innodb_log_buffer_size=4M
innodb_thread_concurrency=8
key_buffer_size=128M
tmp_table_size=128M
read_buffer_size=4M
read_rnd_buffer_size=16M
sort_buffer_size=32M
max_connections=1024

一般
table_cache=512
innodb_additional_mem_pool_size=8M
innodb_flush_log_at_trx_commit=0
innodb_log_buffer_size=4M
innodb_thread_concurrency=8
key_buffer_size=128M
tmp_table_size=128M
read_buffer_size=4M
read_rnd_buffer_size=16M
sort_buffer_size=32M
max_connections=1024

经过测试.没有特殊情况,最好还是用默认的.
2G内存,针对站多,抗压型的设置,最佳:
table_cache=1024 物理内存越大,设置就越大.默认为2402,调到512-1024最佳
innodb_additional_mem_pool_size=4M 默认为2M
innodb_flush_log_at_trx_commit=1
(设置为0就是等到innodb_log_buffer_size列队满后再统一储存,默认为1)
innodb_log_buffer_size=2M 默认为1M
innodb_thread_concurrency=8 你的服务器CPU有几个就设置为几,建议用默认一般为8
key_buffer_size=256M 默认为218 调到128最佳
tmp_table_size=64M 默认为16M 调到64-256最挂
read_buffer_size=4M 默认为64K
read_rnd_buffer_size=16M 默认为256K
sort_buffer_size=32M 默认为256K
max_connections=1024 默认为1210
thread_cache_size=120 默认为60
query_cache_size=64M

优化mysql数据库性能的十个参数
(1)、max_connections:
允许的同时客户的数量。增加该值增加 mysqld 要求的文件描述符的数量。这个数字应该增加,否则,你将经常看到 too many connections 错误。 默认数值是100,我把它改为1024 。
(2)、record_buffer:
每个进行一个顺序扫描的线程为其扫描的每张表分配这个大小的一个缓冲区。如果你做很多顺序扫描,你可能想要增加该值。默认数值是131072(128k),我把它改为16773120 (16m)
(3)、key_buffer_size:
索引块是缓冲的并且被所有的线程共享。key_buffer_size是用于索引块的缓冲区大小,增加它可得到更好处理的索引(对所有读和多重写),到你能负担得起那样多。如果你使它太大,系统将开始换页并且真的变慢了。默认数值是8388600(8m),我的mysql主机有2gb内存,所以我把它改为 402649088(400mb)。
4)、back_log:
要求 mysql 能有的连接数量。当主要mysql线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程花些时间(尽管很短)检查连接并且启动一个新线程。
back_log 值指出在mysql暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中。只有如果期望在一个短时间内有很多连接,你需要增加它,换句话说,这值对到来的tcp/ip连接的侦听队列的大小。你的操作系统在这个队列大小上有它自己的限制。试图设定back_log高于你的操作系统的限制将是无效的。
当你观察你的主机进程列表,发现大量 264084 | unauthenticated user | xxx.xxx.xxx.xxx | null | connect | null | login | null 的待连接进程时,就要加大 back_log 的值了。默认数值是50,我把它改为500。
(5)、interactive_timeout:
服务器在关闭它前在一个交互连接上等待行动的秒数。一个交互的客户被定义为对 mysql_real_connect()使用 client_interactive 选项的客户。 默认数值是28800,我把它改为7200。
(6)、sort_buffer:
每个需要进行排序的线程分配该大小的一个缓冲区。增加这值加速order by或group by操作。默认数值是2097144(2m),我把它改为 16777208 (16m)。
(7)、table_cache:
为所有线程打开表的数量。增加该值能增加mysqld要求的文件描述符的数量。mysql对每个唯一打开的表需要2个文件描述符。默认数值是64,我把它改为512。
(8)、thread_cache_size:
可以复用的保存在中的线程的数量。如果有,新的线程从缓存中取得,当断开连接的时候如果有空间,客户的线置在缓存中。如果有很多新的线程,为了提高性能可以这个变量值。通过比较 connections 和 threads_created 状态的变量,可以看到这个变量的作用。我把它设置为 80。
(9)mysql的搜索功能
用mysql进行搜索,目的是能不分大小写,又能用中文进行搜索
只需起动mysqld时指定 --default-character-set=gb2312
(10)、wait_timeout:
服务器在关闭它之前在一个连接上等待行动的秒数。 默认数值是28800,我把它改为7200。

:参数的调整可以通过修改 /etc/my.cnf 文件并重启 mysql 实现。这是一个比较谨慎的工作,上面的结果也仅仅是我的一些看法,你可以根据你自己主机的硬件情况(特别是内存大小)进一步修改。
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
在win11系统中如何调整虚拟内存?win11系统虚拟内存设置指南在win11系统中如何调整虚拟内存?win11系统虚拟内存设置指南Jan 29, 2024 pm 06:45 PM

虚拟内存是一种可以弥补软件内存不足的技术,它能够提供更好的使用体验。然而,一些用户在升级到Windows11系统后可能不知道如何设置虚拟内存。为了解决这个问题,本站小编为大家提供了最新的设置方法。如果你需要了解完整的步骤,请访问本站获取详细信息。win11设置虚拟内存操作方法1、首先,按键盘win按键,点击找到并进入设置页面。3、接着,在里面找到相关链接中的高级系统设置选项。5、在跳转后的页面中,找到虚拟内存,点击更改按钮即可。

解决win10荒野大镖客2虚拟内存不足的有效方法解决win10荒野大镖客2虚拟内存不足的有效方法Dec 31, 2023 pm 04:29 PM

在玩荒野大镖客2的时候很多小伙伴遇到的最大的问题就是提示虚拟内存不足吧,那么这个问题该怎么解决呢?今天就给大家带来了解决方法一起看看吧。win10荒野大镖客2虚拟内存不足怎么办:1、右击此电脑,点击“属性”。2、点击左侧的“高级系统设置”。3、随后点击“高级”再点击“设置”。4、点击性能中的“高级”选择虚拟内存下面的“更改”。5、取消“自动管理所有驱动器的分页文件大小”前的√,点击“自定义大小”,输入数值,点击设置即可。

如何在 Windows 11 中增加虚拟内存(页面文件)如何在 Windows 11 中增加虚拟内存(页面文件)May 13, 2023 pm 04:37 PM

如果您在运行高端应用程序或游戏时注意到一定的延迟,则可能是RAM/内存通常运行已满。这是增加Windows11中的虚拟内存或页面文件大小的地方。虚拟内存或页面文件是最容易被误解的概念之一,围绕它有很多神话。无论其他人说什么或做什么,都必须彻底了解如何从您的计算机中获得最佳性能。在以下部分中,我们将引导您完成在Windows11中增加虚拟内存的步骤,帮助您了解其重要性以及最佳虚拟内存大小。为什么需要虚拟内存?页面文件或虚拟内存基本上是用作RAM的硬盘的一部分。当内存已满且无法存储更多数据时

虚拟内存设置多少合适虚拟内存设置多少合适Feb 23, 2024 pm 03:34 PM

根据物理内存的大小来决定。具体建议:1、根据微软公司的建议,虚拟内存设为物理内存容量的1.5--3倍;2、如果物理内存为2G,虚拟内存应该设置为3G=3072MB;如果物理内存为4G,那虚拟内存应该设置为6G=6144MB;3、通常推荐将虚拟内存设置为计算机内存总量的1.5到2倍;4、一般跟物理内存差不多。

如何在 Windows 11 中重置虚拟内存(页面文件)?如何在 Windows 11 中重置虚拟内存(页面文件)?Apr 13, 2023 pm 11:28 PM

如果您的计算机没有足够的 RAM 或总是满的,您可以依靠虚拟内存从物理内存中卸载非活动文件。但是,如果这不太顺利,您可能需要在 Windows 11 中重置虚拟内存。我们经常看到我们的计算机滞后,最可能的情况是Windows 11 中的高 RAM 使用率。有很多方法可以降低 RAM 消耗,但这可能会影响您的体验。而且,这就是虚拟内存可以提供帮助的地方。有时需要在 Windows 11 中重置虚拟内存,因此,必须正确理解该概念和过程,我们在以下部分中进行了讨论。虚拟内存是如何工作的,为什么我需要重

虚拟内存分配:16g合适设置吗?虚拟内存分配:16g合适设置吗?Feb 19, 2024 pm 07:42 PM

16G虚拟内存设置多少合适?虚拟内存是计算机系统中的一种技术,它可以通过将部分硬盘空间作为内存的扩充来提升系统的运行效率。对于操作系统来说,虚拟内存是一种非常重要的资源,它可以用来存储暂时不需要的数据,从而释放物理内存供其他程序使用。那么,对于一台具备16G物理内存的计算机来说,该如何设置虚拟内存的大小呢?虚拟内存的大小是由操作系统自动管理的,但我们也可以手

如何优化Win11虚拟内存设置?Win11虚拟内存最佳配置方法如何优化Win11虚拟内存设置?Win11虚拟内存最佳配置方法Jan 30, 2024 pm 05:54 PM

如果你常常因为系统内存不足而感到困扰,可以尝试通过设置虚拟内存来解决问题。虚拟内存可以在一定程度上减轻电脑的卡顿现象。然而,对于不熟悉Win11系统的用户来说,如何进行虚拟内存的设置可能不太清楚。下面我将与大家分享一下Win11系统中设置虚拟内存的方法。win11虚拟内存设置多少合适?1、如果电脑内存小于4GB,通常可以将虚拟内存设置在2-4GB之间。根据理论,可以将虚拟内存设置为物理内存的1.5倍,但在实际使用中可以根据需要进行灵活调整,并没有固定的数值要求。甚至可以将虚拟内存设置为与物理内存

Win11系统的虚拟内存设置步骤Win11系统的虚拟内存设置步骤Jan 30, 2024 am 11:48 AM

Win11系统如何设置虚拟内存虚拟内存是计算机系统中的一种技术,它可以将硬盘空间作为内存的延伸,以提供更多的可用内存空间。在Win11系统中,设置虚拟内存可以帮助提高系统的性能和稳定性。本文将介绍如何在Win11系统中设置虚拟内存。步骤一:打开系统属性首先,右键点击“此电脑”图标,然后选择“属性”。在弹出的窗口中,点击左侧的“高级系统设置”。步骤二:打开虚拟内存设置在弹出的“系统属性”窗口中,点击“高级”选项卡下的“性能”区域中的“设置”按钮。接下来,在弹出的“性能选项”窗口中,点击“高级”选项

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.