mysql占用资源过大如何解决

MySQL占用资源过大如何解决,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

创新互联专注于企业成都营销网站建设、网站重做改版、剑阁网站定制设计、自适应品牌网站建设、H5开发商城网站制作、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为剑阁等各大城市提供网站开发制作服务。

    在 linux 下,经常出现的情况就是使用 VBB 这种系统时,出现缓慢, 假死状态,sleep进程过多等等现像。导致几十个用户,就把系统搞定了。
    其实这是 mysql 配置上的问题, 默认的 linux 中, mysql 的配置是 my-large.cnf 配置,该配置适合大型服务器。有高内存,比如2G,4G内存的,适合使用,而一般512M内存 的就不行了。它会占用512M内存来保存系统 mysql 的进程,这些进程长期堆质,并不释放,导致系统缓慢。所以,把配置改变成为 my-small.cnf ,小型配置就可以了。它的配置如下:
    # Example mysql config file for small systems.
    #
    # This is for a system with little memory (<= 64M) where MySQL is only used
    # from time to time and its important that the mysqld deamon
    # doesnt use much resources.
    #
    # You can copy this file to
    # /etc/my.cnf to set global options,
    # mysql-data-dir/my.cnf to set server-specific options (in this
    # installation this directory is /var/lib/mysql) or
    # ~/.my.cnf to set user-specific options.
    #
    # One can in this file use all long options that the program supports.
    # If you want to know which options a program support, run the program
    # with --help option.
    # The following options will be passed to all MySQL clients
    [client]
    #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
    set-variable = key_buffer=16K
    set-variable = max_allowed_packet=1M
    set-variable = thread_stack=64K
    set-variable = table_cache=4
    set-variable = sort_buffer=64K
    set-variable = net_buffer_length=2K
    server-id = 1
    # Uncomment the following if you want to log updates
    #log-bin
    # Uncomment the following if you are NOT using BDB tables
    #skip-bdb
    # Uncomment the following if you are using InnoDB tables
    #innodb_data_home_dir = /var/lib/mysql/
    #innodb_data_file_path = ibdata1:10M:autoextend
    #innodb_log_group_home_dir = /var/lib/mysql/
    #innodb_log_arch_dir = /var/lib/mysql/
    # You can set .._buffer_pool_size up to 50 - 80 %
    # of RAM but beware of setting memory usage too high
    #set-variable = innodb_buffer_pool_size=16M
    #set-variable = innodb_additional_mem_pool_size=2M
    # Set .._log_file_size to 25 % of buffer pool size
    #set-variable = innodb_log_file_size=5M
    #set-variable = innodb_log_buffer_size=8M
    #innodb_flush_log_at_trx_commit=1
    #set-variable = innodb_lock_wait_timeout=50
    [mysqldump]
    quick
    set-variable = max_allowed_packet=16M
    [mysql]
    no-auto-rehash
    # Remove the next comment character if you are not familiar with SQL
    #safe-updates
    [isamchk]
    set-variable = key_buffer=8M
    set-variable = sort_buffer=8M
    [myisamchk]
    set-variable = key_buffer=8M
    set-variable = sort_buffer=8M
    [mysqlhotcopy]
    interactive-timeout

关于mysql占用资源过大如何解决问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


网页标题:mysql占用资源过大如何解决
文章路径:http://cdiso.cn/article/geoihh.html

其他资讯