开发者社区> 问答> 正文

512M内存机器如何用好Mysql

购买阿里云512M内存ECS后,mysql有时候会自动关闭,停止运行
解决办法:
a,优化mysql配置,因为自己安装的是mysql 5.6,而从5.6开始,mysql安装包中不再包含my-small.cnf配置文件。该文件是为内存小于64M的服务器设计的配置参数。所以,只需将my.cnf中的参数配置成mysql 5.5安装包中my-small.cnf的参数。mysql5.6中my-small.cnf在线链接如下:https://github.com/subsven/mysql-5.5-debian/blob/master/support-files/my-small.cnf.sh
b, 如果未使用innodb存储引擎,请在my.cnf中[mysqld]行之下添加 skip-innodb
c, 检查mysql加载的my.cnf配置文件是否正确



先找到mysqld的位置
[root@AY140508071824543c68Z bin]# find / -name mysqld
/opt/lampp/sbin/mysqld
查看系统中存在几个my.cnf文件
[root@AY140508071824543c68Z bin]# find / -name my.cnf
/opt/lampp/etc/my.cnf
查看mysqld加载的配置文件,注意mysqld 加载的时候, 从左到右的读出上面列出的文件, 并进行Merge, 参数重复时, 以后加载的为准
[root@AY140508071824543c68Z bin]# /opt/lampp/sbin/mysqld --verbose --help |head -15
Default options are read from the following files in the given order:
/opt/lampp/etc/xampp/my.cnf /opt/lampp/etc/my.cnf ~/.my.cnf
建议删除无关的my.cnf配置




d, 创建cron程序监控mysql, 并在异常时自动重启mysql,下面以我部署的xampp环境为例。



[root@AY140508071824543c68Z ~]# vim mysql-check.sh
添加如下代码:
#!/bin/bash
/opt/lampp/lampp status | grep 'MySQL is running' > /dev/null
if [ $? != 0 ]
then
    /opt/lampp/lampp restart
fi
保存,然后执行
[root@AY140508071824543c68Z ~]# crontab -e
添加如下代码:
* * * * * ~/mysql-check.sh
保存





参考链接:
http://blog.163.com/eric1945@126/blog/static/16493457220110266112909/
https://www.digitalocean.com/community/tutorials/how-to-use-a-simple-bash-script-to-restart-server-programs
有更好的建议,欢迎和我QQ交流:370295655

展开
收起
shaquille 2014-06-14 09:31:03 12053 0
4 条回答
写回答
取消 提交回答
  • Re512M内存机器如何用好Mysql
    我一般只修改my.cnf文件,  在[mysqld]后面加上skip-innodb, 内存占用大减
    2014-07-18 11:49:41
    赞同 展开评论 打赏
  • Re512M内存机器如何用好Mysql
    感谢你的解决办法
    * * * * * ~/mysql-check.sh,你这个文件是不是放在根目录下了啊!我放在root文件夹下面是不是需要修改成:* * * * * ~/root/mysql-check.sh这样啊!
    2014-07-17 21:18:27
    赞同 展开评论 打赏
  • 欢迎进行技术分享,感谢你的支持!
    2014-07-09 19:18:21
    赞同 展开评论 打赏
  • 2014-06-14 10:24:58
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
One Box: 解读事务与分析一体化数据库 HybridDB for MySQL 立即下载
内存取证与IaaS云平台恶意行 为的安全监控 立即下载
云服务器ECS内存增强型实例re6全新发布 立即下载

相关镜像