前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >适合mysql 5.6与5.7内存参数优化内存占用为30MB左右

适合mysql 5.6与5.7内存参数优化内存占用为30MB左右

原创
作者头像
栖枝perch
修改2020-04-02 17:48:14
3.9K0
修改2020-04-02 17:48:14
举报
文章被收录于专栏:博学多材博学多材

说明:mysql 5.6、5.7默认启动占用内存400多M,如果是vps等小内存应用,mysql内存占用率明显偏高,将会导致崩溃,mysql会自动停止。 编辑/etc/my.cnf文件在[mysqld]下增加或修改如下参数

代码语言:javascript
复制
performance_schema_max_table_instances = 200

table_definition_cache = 100

table_open_cache = 100。

PHP

复制

这个三个参数,调低值后内存能明显减小,现在mysql使用内存约60MB左右,就大大降低默认使用的内存。

进一步调整参数

代码语言:javascript
复制
innodb_buffer_pool_size=2M

PHP

复制

这个三个参数可以调小。 再进一步调整: mysql 5.6默认启用performance_schema,占用很多内存,可以禁用。

完整配置文件如下,内存占用到22M

我的mysql配置如下,如果你使用的centos6 64位,并且是yum安装的(一键脚本)可以自己按照如下照抄,我的是centos6 64位系统

先ssh登录服务器或VPS,在vi /etc/my.cnf

代码语言:javascript
复制
# For advice on how to change settings please see

# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html

[mysqld]

#

# Remove leading # and set to the amount of RAM for the most important data

# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.

# innodb_buffer_pool_size = 128M

#

# Remove leading # to turn on a very important data integrity option: logging

# changes to the binary log between backups.

# log_bin

#

# Remove leading # to set options mainly useful for reporting servers.

# The server defaults are faster for transactions and fast SELECTs.

# Adjust sizes as needed, experiment to find the optimal values.

# join_buffer_size = 128M

# sort_buffer_size = 2M

# read_rnd_buffer_size = 2M

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

#symbolic-links=0

skip-external-locking

key_buffer_size = 8M

max_allowed_packet = 1M

table_open_cache = 4

sort_buffer_size = 64K

read_buffer_size = 256K

read_rnd_buffer_size = 256K

net_buffer_length = 2K

thread_stack = 240K

#innodb_use_native_aio = 0

innodb_buffer_pool_size=2M

performance_schema_max_table_instances=50

table_definition_cache=50

table_open_cache=32

max_connections=50

max_user_connections=35

wait_timeout=10

interactive_timeout=15

long_query_time=5

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

# Recommended in standard MySQL setup

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

PHP

复制

默认值如下:

代码语言:javascript
复制
performance_schema_max_table_instances 12500

table_definition_cache 1400

table_open_cache 2000

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档