winnieji 发表于 2016-2-16 10:21:51

关于MYSQL优化

军哥在这里(https://bbs.vpser.net/viewthread.php?tid=8914&page=1&fromuid=3#pid26041)说到:

如果mysql安装时开启了innodb的话,内存在4G以上可以用/usr/local/mysql/share/mysql/ (mysql5.5在5.5在/usr/local/mysql/support-files/)下面的my-innodb-heavy-4G.cnf 替换/etc/my.cnf 1-2G的话,没开启innodb的话可以用my-huge.cnf,如开启了innodb需要修改配置文件启用。

请问2G内存的VPS,5.6版本的MYSQL,又有INNODB,这个my-huge.cnf在哪,另外需要修改配置文件的什么地方?

谢谢哈。

[ 本帖最后由 winnieji 于 2016-2-16 10:24 编辑 ]

licess 发表于 2016-2-16 12:40:59

https://bbs.vpser.net/viewthread.php?tid=8914&page=1&fromuid=3#pid38031

另外1.3上都是根据配置自动优化的

winnieji 发表于 2016-2-16 12:48:54

回复 2# 的帖子

我用的1.2,2G的内存MYSQL经常挂掉,前几天贴日志给您看,看不出什么,没有明显被KILL,但就是经常挂掉。

winnieji 发表于 2016-2-16 13:09:03

回复 2# 的帖子

直接将my.cnf替换为my-huge.cnf就可以了吗,您说的“如开启了innodb需要修改配置文件启用。”,是指改哪里啊?

winnieji 发表于 2016-2-16 13:12:31

是把my-huge.cnf,这里的注释去掉就行了对吧?
# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /usr/local/mysql/data
#innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
#innodb_log_group_home_dir = /usr/local/mysql/data
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#innodb_buffer_pool_size = 384M
#innodb_additional_mem_pool_size = 20M
# Set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 100M
#innodb_log_buffer_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

licess 发表于 2016-2-16 15:18:50

回复 5# 的帖子

winnieji 发表于 2016-2-16 16:26:13

回复 6# 的帖子

军哥,这个my-huge.cnf是不是有点问题,替换后重启LNMP提示:
Stoping LNMP...
Stoping nginx...done
MySQL server PID file could not be found!                  [失败]
Gracefully shutting down php-fpm . done
Starting LNMP...
Starting nginx...done
Starting MySQL.The server quit without updating PID file (/usr/local/mysql/data/AY140615111704Z.pid).                                             [失败]
Starting php-fpmdone

比对文件发现my-huge.cnf和原来的my.cnf并不太一样,当然除了优化的参数外,比如my-huge.cnf少了行max_connections = 1000以及datadir = /usr/local/mysql/var,还有其他一些地方哦。

替换失败,没敢再替换了,现在改为直接在my.cnf上面参照my-huge.cnf修改了。

licess 发表于 2016-2-16 20:57:01

回复 7# 的帖子

max_connections 设置不设置都是可以的,datadir必须要有

有具体日志才能知道具体原因

winnieji 发表于 2016-2-17 09:52:09

晕了,今天又挂了唉,每天都是在夜里,麻烦军哥看下MYSQL日志有什么问题。谢谢。

licess 发表于 2016-2-17 19:31:19

2016-02-17 05:04:34 12095 InnoDB: Initializing buffer pool, size = 100.0M
InnoDB: mmap(107315200 bytes) failed; errno 12
2016-02-17 05:04:34 12095 InnoDB: Cannot allocate memory for the buffer pool
2016-02-17 05:04:34 12095 Plugin 'InnoDB' init function returned error.
2016-02-17 05:04:34 12095 Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2016-02-17 05:04:34 12095 Unknown/unsupported storage engine: InnoDB
2016-02-17 05:04:34 12095 Aborting

按日志里的信息是内存不足了,你把innodb_buffer_pool_size的值调小一些试试看看
另外也可以再加上一些swap

winnieji 发表于 2016-2-17 22:23:45

回复 10# 的帖子

我也看到这里了,昨天调大了,但是没调大之前MYSQL也经常挂啊,所以这次的ERROR不算啥,以前挂的时候没这个ERROR的,另外军哥咋建SWAP分区呀?

licess 发表于 2016-2-18 14:20:47

回复 11# 的帖子

参考:https://www.vpser.net/opt/vps-add-swap.html
页: [1]
查看完整版本: 关于MYSQL优化