欢迎来到阿里云授权服务中心典名科技有限公司!咨询电话:023-66887777 18623333330

微信
手机版
网站地图

MySQL server安装前后需要做哪些优化

2021-08-24 14:03:22 投稿人 : admin 围观 : 330 次 0 评论

“MySQL server安装前后需要做哪些优化”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、硬件部分

   1、建议单独跑MySQL server的服务器 使用ssd磁盘,提高磁盘的io

   2、建议选择使用RAID 10 而非RAID 5    RAID 10 虽然浪费了一部分磁盘空间,但是比RAID5 的IO能力提高不少

二、OS部分

   1、建议使用deadline/noop这两种I/O调度器,系统默认的为cfq

    2、建议使用xfs文件系统、高并发情况下凸显出其性能优势

三、系统内核优化

    1、将net.ipv4.tcp_tw_recycle设置为1

    2、将net.ipv4.tcp_tw_reuse 设置为1
    3、将以上两个参数开启,可快速减少在TIME-WAIT状态TCP连接数,提高TCP效率

    4、将vm.dirty_background_ratio设置为5
    5、将vm.dirty_ratio设置为10     

       vm.dirty_background_ratio:这个参数指定了当文件系统缓存脏页数量达到系统内存百分之多少时(如5%)就会触发pdflush/flush/kdmflush等后台回写进程运行,将一定缓存的脏页异步地刷入外存
        vm.dirty_ratio而这个参数则指定了当文件系统缓存脏页数量达到系统内存百分之多少时(如10%),系统不得不开始处理缓存脏页(因为此时脏页数量已经比较多,为了避免数据丢失需要将一定脏页刷入外存);在此过程中很多应用进程可能会因为系统转而处理文件IO而阻塞。

未标题-1.jpg

    6、将vm.swappiness设置为0  可以降低swapping的延迟(前提是确保机器不会出现内存不足的情况,若出现可能会被oom掉)

四、MySQL server参数优化

    1、建议使用innodb存储引擎、MySQL5.5之后的默认存储引擎是innodb引擎,可满足95%以上用户需求

    2、建议调整innodb_buffer_pool_size的大小,主要作用是缓存innodb表的索引,数据,插入数据时的缓冲默认为128M,如果是单独MySQL服务器,建议设置为物理内存的70%--80%左右。
        并不是设置的越大越好。设置的过大,会导致system的swap空间被占用,导致操作系统变慢,从而减低sql查询的效率。 
innodb的logfile就是事务日志,用来在 mysqlcrash后的恢复.所以设置合理的大小对于mysql的性能非常重要

    3、建议设置innodb_log_files_in_group = 2

    4、建议设置innodb_file_per_table = 1 使用单独表空间易维护
            1. 如果使用软链接将大表分配到不同的分区上,易于管理数据文件
            3. 易于修复和恢复损坏的数据
            3.2 导出导入只针对单个表,而不是整个共享表空间
            5. 对于大量的delete操作,更易于回收磁盘空间
            7. 易于安全审计
            有三个值:fdatasync(默认),O_DSYNC,O_DIRECT 
            为O_DSYNC时,innodb会使用O_SYNC方式打开和刷写redo log,使用fsync()刷写数据文件 
            在类unix操作系统中,文件的打开方式为O_DIRECT会最小化缓冲对io的影响,该文件的io是直接在用户空间的buffer上操作的,
             并且io操作是同步的,因此不管是read()系统调用还是write()系统调用,数据都保证是从磁盘上读取的

     5、建议设置binlog_format=row   默认为statement,强烈建议设置为row模式 记录每一条记录的修改,有利于主从同步

版权声明:本站部分文章内容、图片来源于网友推荐、互联网收集整理而来,仅供大家学习参考,不代表本站立场,如有侵权,请联系站长,我们会第一时间处理!本站原创内容未经允许不得转载,或转载时需注明出处:典名科技资讯门户

相关文章

  • mysql5.7如何修改root密码
    mysql5.7如何修改root密码

    这篇文章主要介绍了mysql5.7如何修改root密码的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql5.7如何修改root密码文章都会有所收获,下面我们一起来看看吧。方法:1、用“set passwo...

    2022-05-23 13:47:02
  • mysql如何修改column
    mysql如何修改column

    这篇文章主要介绍“mysql如何修改column”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mysql如何修改column”文章能帮助大家解决问题。方法:1、用“alter table 表名 mo...

    2022-05-23 13:47:01
  • mysql的慢查询日志记录哪些内容
    mysql的慢查询日志记录哪些内容

    本篇内容主要讲解“mysql的慢查询日志记录哪些内容”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql的慢查询日志记录哪些内容”吧!在mysql中,慢查询日志记录的是响应时间超过阈值的语句...

    2022-05-23 13:47:01
  • 常见SQL注入类型及原理是什么
    常见SQL注入类型及原理是什么

    这篇“常见SQL注入类型及原理是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“常见SQL注入类型及原理是什么”文章吧。M...

    2022-05-23 13:47:01
  • mysql workbench中如何注释
    mysql workbench中如何注释

    本篇内容介绍了“mysql workbench中如何注释”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!mysql workbench中的注释...

    2022-05-23 13:46:58
  • mysql如何修改definer
    mysql如何修改definer

    这篇文章主要介绍“mysql如何修改definer”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mysql如何修改definer”文章能帮助大家解决问题。修改方法:1、利用“update mysql...

    2022-05-23 13:46:56
  • mysql如何查询当前登录的用户
    mysql如何查询当前登录的用户

    本文小编为大家详细介绍“mysql如何查询当前登录的用户”,内容详细,步骤清晰,细节处理妥当,希望这篇“mysql如何查询当前登录的用户”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。方法:1、用USER()函数,...

    2022-05-18 10:01:01
  • mysql如何查询外键约束
    mysql如何查询外键约束

    这篇文章主要介绍了mysql如何查询外键约束的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql如何查询外键约束文章都会有所收获,下面我们一起来看看吧。在mysql中,可以利用show语句查询外键约束,sh...

    2022-05-18 10:01:01
  • mysql查询如何设置降序
    mysql查询如何设置降序

    本篇内容介绍了“mysql查询如何设置降序”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在mysql中,可以利用desc关键字对查询结果进行...

    2022-05-18 10:01:00
  • mysql如何修改主键的值
    mysql如何修改主键的值

             这篇文章主要介绍了mysql如何修改主键的值的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql如何修改主键的值文章都会有所收获,下面我们...

    2022-05-18 10:01:00
发表评论