免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 16943 | 回复: 61
打印 上一主题 下一主题

恳请高手指点,1G内存VPS的MYSQL数据库配置文件MY.CNF的优化方案 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-21 14:06 |只看该作者 |倒序浏览
本帖最后由 腐败网 于 2012-01-24 21:28 编辑

LINUX系统的VPS
内存 1G
硬盘 40G,闲置空间 18G
一颗CPU,Intel(R) Xeon(R) CPU E5506 @ 2.13GHz,限制多少不知道

现在CPU占用很高,经查,是MYSQL数据库占用资源较多
见下图

mysql日志.part05.rar (286.95 KB, 下载次数: 24) mysql日志.part04.rar (1.39 MB, 下载次数: 15) mysql日志.part03.rar (1.39 MB, 下载次数: 28) mysql日志.part02.rar (1.39 MB, 下载次数: 15) mysql日志.part01.rar (1.39 MB, 下载次数: 18) slow_log.rar (1.38 MB, 下载次数: 27)

所以现在想优化一下数据库的配置文件
数据库状态见下图



下面是现有配置文件内容:

# Example MySQL config file for very large systems.
#
# This is for a large system with memory of 1G-2G where the system runs mainly
# MySQL.
#
# MySQL programs look for option files in a set of
# locations which depend on the deployment platform.
# You can copy this option file to one of those
# locations. For information about these locations, see:
# http://dev.mysql.com/doc/mysql/en/option-files.html
#
# In this file, you can use all long options that a program supports.
# If you want to know which options a program supports, run the program
# with the "--help" option.

# The following options will be passed to all MySQL clients
[client]
#password        = your_password
port                = 3306
socket                = /tmp/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
port                = 3306
socket                = /tmp/mysql.sock
skip-locking
key_buffer_size = 128M
max_allowed_packet = 16M
table_open_cache = 65535
sort_buffer_size = 4M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size = 32M
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 8

# Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the "enable-named-pipe" option) will render mysqld useless!
#
#skip-networking

# Replication Master Server (default)
# binary logging is required for replication
log-bin=mysql-bin

# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id        = 1

# Replication Slave (comment out master section to use this)
#
# To configure this host as a replication slave, you can choose between
# two methods :
#
# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
#    the syntax is:
#
#    CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
#    MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
#
#    where you replace <host>, <user>, <password> by quoted strings and
#    <port> by the master's port number (3306 by default).
#
#    Example:
#
#    CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
#    MASTER_USER='joe', MASTER_PASSWORD='secret';
#
# OR
#
# 2) Set the variables below. However, in case you choose this method, then
#    start replication for the first time (even unsuccessfully, for example
#    if you mistyped the password in master-password and the slave fails to
#    connect), the slave will create a master.info file, and any later
#    change in this file to the variables' values below will be ignored and
#    overridden by the content of the master.info file, unless you shutdown
#    the slave server, delete master.info and restart the slaver server.
#    For that reason, you may want to leave the lines below untouched
#    (commented) and instead use CHANGE MASTER TO (see above)
#
# required unique id between 2 and 2^32 - 1
# (and different from the master)
# defaults to 2 if master-host is set
# but will not function as a slave if omitted
#server-id       = 2
#
# The replication master for this slave - required
#master-host     =   <hostname>
#
# The username the slave will use for authentication when connecting
# to the master - required
#master-user     =   <username>
#
# The password the slave will authenticate with when connecting to
# the master - required
#master-password =   <password>
#
# The port the master is listening on.
# optional - defaults to 3306
#master-port     =  <port>
#
# binary logging - not required for slaves, but recommended
#log-bin=mysql-bin
#
# binary logging format - mixed recommended
#binlog_format=mixed

# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /usr/local/mysql/var
#innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
#innodb_log_group_home_dir = /usr/local/mysql/var
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high

# Set .._log_file_size to 25 % of buffer pool size

innodb_buffer_pool_size = 512M
innodb_additional_mem_pool_size = 8M
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
innodb_max_dirty_pages_pct=90
innodb_open_files=65535

innodb_file_per_table=1

# innodb_flush_method=O_DIRECT

query_cache_size=128M

log_slow_queries=1
slow_launch_time=1
long_query_time=0.5
log_output=table




[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]


想请高手们指点一下,我现在要如何优化MY.CNF

论坛徽章:
0
2 [报告]
发表于 2011-12-21 14:10 |只看该作者
顶一下

论坛徽章:
4
CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52戌狗
日期:2013-12-27 15:08:11
3 [报告]
发表于 2011-12-21 14:27 |只看该作者
本帖最后由 小版主杀手 于 2011-12-21 14:31 编辑

开启慢查询 看看哪些语句要优化的,如加索引或者其他的优化
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 8

这个取消掉 或者改为2看

论坛徽章:
0
4 [报告]
发表于 2011-12-25 23:44 |只看该作者
谢谢!
我试试看

论坛徽章:
0
5 [报告]
发表于 2011-12-27 18:01 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
6 [报告]
发表于 2011-12-28 13:58 |只看该作者
回复 5# kerlion

是远程SSH连接上后,输入top

   

论坛徽章:
4
CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52戌狗
日期:2013-12-27 15:08:11
7 [报告]
发表于 2011-12-28 14:53 |只看该作者
腐败网 发表于 2011-12-28 13:58
回复 5# kerlion

是远程SSH连接上后,输入top


现在CPU占用如何了?

论坛徽章:
0
8 [报告]
发表于 2011-12-29 21:15 |只看该作者
cgi也挺多

论坛徽章:
0
9 [报告]
发表于 2012-01-05 02:39 |只看该作者
回复 7# 小版主杀手


    我换了几个服务器,现在这个似乎好点了,但是不是也会占用过高
慢查询我不会搞
所以一时还不知道怎么处理
谢谢你的关注
如果可能可否指点一下

论坛徽章:
4
CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52戌狗
日期:2013-12-27 15:08:11
10 [报告]
发表于 2012-01-05 09:39 |只看该作者
腐败网 发表于 2012-01-05 02:39
回复 7# 小版主杀手

my.cnf里加上
log_slow_queries = ON
log_slow_queries=slow-log
long_query_time=2---查询超过2秒的语句记录下来

看手册 和网上搜索含义
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP