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 实现。这是一个比较谨慎的工作,上面的结果也仅仅是我的一些看法,你可以根据你自己主机的硬件情况(特别是内存大小)进一步修改。

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

가상 메모리는 소프트웨어 메모리 부족을 보완하고 더 나은 사용자 경험을 제공할 수 있는 기술이다. 그러나 일부 사용자는 Windows 11 시스템으로 업그레이드한 후 가상 메모리를 설정하는 방법을 모를 수 있습니다. 이 문제를 해결하기 위해 본 사이트의 편집자는 최신 설정 방법을 제공합니다. 전체 단계를 알아야 할 경우 이 사이트를 방문하여 자세한 내용을 확인하세요. win11에서 가상 메모리를 설정하는 방법 1. 먼저 키보드의 win 버튼을 누르고 클릭하여 설정 페이지를 찾아 들어갑니다. 3. 그런 다음 관련 링크에서 고급 시스템 설정 옵션을 찾으세요. 5. 점프 후 페이지에서 가상 메모리를 찾아 변경 버튼을 클릭합니다.

Red Dead Redemption 2를 플레이할 때 많은 친구들이 겪는 가장 큰 문제는 가상 메모리가 부족하다는 메시지입니다. 그렇다면 이 문제를 해결하는 방법은 무엇일까요? 오늘은 여러분이 살펴볼 솔루션을 가져왔습니다. Windows 10의 Red Dead Redemption 2에서 가상 메모리가 부족한 경우 해결 방법: 1. 이 컴퓨터를 마우스 오른쪽 버튼으로 클릭하고 "속성"을 클릭합니다. 2. 왼쪽의 "고급 시스템 설정"을 클릭하세요. 3. 그런 다음 "고급"을 클릭하고 "설정"을 클릭합니다. 4. 성능에서 "고급"을 클릭하고 가상 메모리에서 "변경"을 선택하세요. 5. "모든 드라이브의 페이징 파일 크기 자동 관리" 앞의 √를 취소하고 "사용자 정의 크기"를 클릭한 후 값을 입력하고 설정을 클릭합니다.

고급 응용 프로그램이나 게임을 실행할 때 어느 정도 지연이 발생하는 경우 일반적으로 RAM/메모리가 가득 찬 것일 수 있습니다. Windows 11에서 가상 메모리나 페이지 파일 크기를 늘리는 곳입니다. 가상 메모리 또는 페이지 파일은 가장 오해되는 개념 중 하나이며 이를 둘러싼 많은 신화가 있습니다. 다른 사람이 뭐라고 말하거나 행동하든, 컴퓨터에서 최상의 성능을 얻는 방법을 철저히 이해하는 것이 중요합니다. 다음 섹션에서는 Windows 11에서 가상 메모리를 늘리는 단계를 안내하여 가상 메모리의 중요성과 최적의 가상 메모리 크기를 이해하는 데 도움을 드립니다. 가상 메모리가 필요한 이유는 무엇입니까? 페이지 파일 또는 가상 메모리는 기본적으로 RAM으로 사용되는 하드 드라이브의 일부입니다. 메모리가 가득 차서 더 이상 데이터를 저장할 수 없는 경우

실제 메모리 크기에 따라 다릅니다. 구체적인 제안 사항: 1. Microsoft 권장 사항에 따르면 가상 메모리는 실제 메모리 용량의 1.5-3배로 설정되어야 합니다. 2. 실제 메모리가 2G인 경우 가상 메모리는 3G=3072MB로 설정되어야 합니다. 4G인 경우 가상 메모리는 3072MB로 설정되어야 합니다. 3. 일반적으로 가상 메모리를 전체 컴퓨터 메모리의 1.5~2배로 설정하는 것이 좋습니다. 일반적으로 다음과 유사합니다. 물리적 메모리.

컴퓨터에 RAM이 충분하지 않거나 항상 가득 찬 경우 가상 메모리를 사용하여 실제 메모리에서 비활성 파일을 언로드할 수 있습니다. 하지만 그래도 문제가 해결되지 않으면 Windows 11에서 가상 메모리를 재설정해야 할 수도 있습니다. Windows 11의 높은 RAM 사용량으로 인해 컴퓨터가 지연되는 경우가 종종 있습니다. RAM 소비를 줄이는 방법이 있지만 이는 사용자 경험에 영향을 미칠 수 있습니다. 그리고 이것이 바로 가상 메모리가 도움이 될 수 있는 부분입니다. Windows 11에서는 가상 메모리를 재설정해야 하는 경우가 있으므로 다음 섹션에서 설명하는 개념과 프로세스를 올바르게 이해하는 것이 중요합니다. 가상 메모리는 어떻게 작동하며 왜 다시 설정해야 합니까?

16G 가상 메모리에 적합한 설정은 무엇입니까? 가상 메모리는 하드 디스크 공간의 일부를 메모리 확장으로 사용하여 시스템의 운영 효율성을 향상시킬 수 있는 컴퓨터 시스템의 기술입니다. 운영 체제의 경우 가상 메모리는 불필요한 데이터를 일시적으로 저장하여 다른 프로그램에서 사용할 수 있도록 물리적 메모리를 확보하는 데 사용할 수 있는 매우 중요한 리소스입니다. 그렇다면 물리적 메모리가 16G인 컴퓨터의 경우 가상 메모리 크기를 어떻게 설정합니까? 가상 메모리의 크기는 운영 체제에 의해 자동으로 관리되지만 수동으로 관리할 수도 있습니다.

실제로 소위 가상 메모리는 실제로 Windows 시스템에서 메모리로 사용되는 하드 디스크에 새겨진 커다란 특수 영역입니다. 이상적인 가상 메모리 크기를 어떻게 설정할 수 있습니까? win10에 적합한 가상 메모리 설정은 무엇입니까? 답변: win10에 가장 적합한 가상 메모리 설정은 실제 메모리의 1.5배입니다. 이는 단지 참고값일 뿐입니다. 구체적인 설정 방법은 실제 상황에 따라 다릅니다. 최소 설정 범위는 물리적 메모리의 1~1.5배이며, 구체적인 설정 방법의 경우 최대값은 2~2.5배입니다. , 오른쪽의 링크를 클릭하면 세부 내용을 볼 수 있습니다. (Win10 가상 메모리 설정 방법) win10 가상 메모리는 어떤 드라이브에 설정하는 것이 가장 좋나요? 답변: Win10 가상 메모리는 C 드라이브에 설정하는 것이 가장 좋습니다. 왜냐하면

시스템 메모리 부족으로 인해 자주 고민이 된다면, 가상 메모리를 설정하여 문제 해결을 시도해 볼 수 있습니다. 가상 메모리는 컴퓨터 지연을 어느 정도 완화할 수 있습니다. 하지만 Win11 시스템에 익숙하지 않은 사용자의 경우 가상 메모리 설정 방법이 명확하지 않을 수 있습니다. 아래에서는 Win11 시스템에서 가상 메모리를 설정하는 방법을 공유하겠습니다. win11에 적합한 가상 메모리 설정은 무엇입니까? 1. 컴퓨터 메모리가 4GB 미만인 경우 일반적으로 가상 메모리를 2~4GB 사이로 설정할 수 있습니다. 이론에 따르면 가상 메모리는 물리적 메모리의 1.5배로 설정할 수 있지만 실제 사용에서는 필요에 따라 유연하게 조정할 수 있으며 고정된 수치 요구 사항은 없습니다. 실제 메모리와 일치하도록 가상 메모리를 설정할 수도 있습니다.
