首页 > 数据库 >mysql数据库性能优化

mysql数据库性能优化

时间:2023-10-13 19:32:35浏览次数:42  
标签:数据库 mysql 查询 索引 sql 优化 可以

数据库的性能优化可以从以下几个方面进行优化:

1.硬件和操作系统:硬件可以从cpu、内存、I/O,网络带宽等方面进行优化。系统层可以从文件句柄数,网络配置等方面

2.数据库的架构:比如主从集群以及主从架构的变种可以做高可用及容灾,读写分离可以避免读操作比较高的服务影响数据写入,分库分表可以降低单库I/O,提高sql 效率,还可以引入缓存库比如redis,进行缓存热点数据,降低数据库的访问

3.配置:mysql 的配置文件my.cnf ,比如连接数,开启binlog,bufferpool 等

4.sql 优化:a.对于慢sql 可以查看慢查询日志,用慢查询工具进行分析

                 b.查看执行计划,主要看type,key,rows,fileterd

                 c.l利用show profile 工具查看资源消耗情况,比如I/O开销,内存开销等

sql 优化规则:

1.sql 查询基于索引来进行数据扫描

2.避免索引列使用函数或运算符

3.where 条件中like 的%号尽量放在右边

4.联合索引中的列从左往右,尽量按索引顺序查询及排序

5.少使用*号,尽量用字段来按需查询

6.使用小表驱动大表

标签:数据库,mysql,查询,索引,sql,优化,可以
From: https://blog.51cto.com/u_11103985/7850550

相关文章

  • openGauss学习笔记-98 openGauss 数据库管理-管理数据库安全-客户端接入认证之配置客
    openGauss学习笔记-98openGauss数据库管理-管理数据库安全-客户端接入认证之配置客户端接入认证98.1背景信息如果主机需要远程连接数据库,必须在数据库系统的配置文件中增加此主机的信息,并且进行客户端接入认证。配置文件(默认名称为pg_hba.conf)存放在数据库的数据目录里。hba(ho......
  • Apipost连接数据库详解
    Apipost提供了数据库连接功能,在接口调试时可以使用数据库获取入参或进行断言校验。目前的Apipost支持:Mysql、SQLSever、Oracle、Clickhouse、达梦数据库、PostgreSQL、Redis、MongoDB8种数据库的连接操作新建数据库连接:在「项目设置」-「公共资源维护」-「连接数据库」中配置需......
  • 深入理解MySQL中的Join算法
    本文已收录至GitHub,推荐阅读......
  • Apipost连接数据库详解
    Apipost提供了数据库连接功能,在接口调试时可以使用数据库获取入参或进行断言校验。目前的Apipost支持:Mysql、SQLSever、Oracle、Clickhouse、达梦数据库、PostgreSQL、Redis、MongoDB8种数据库的连接操作新建数据库连接:在「项目设置」-「公共资源维护」-「连接数据库」中配置......
  • mysql 分区表
    场景:数据库磁盘爆满,使用delete无法清理磁盘,清理会有binlog,redolog,磁盘无法释放。个人遇到的真实场景:数据库数据上千万,要清理历史数据,但是delete删除数据无法释放磁盘,运维老大哥给的方案,先分区表,然后再truncate这样就能清理历史数据,磁盘也能释放。 操作步骤:1,查看数据库......
  • 各个数据库存二进制大文件的性能测试
    1前言​有个项目软件前端将二进制大文件存在了indexDB,每次给后端传文件(需要传到底层C++进行调用)都会导致内存占用飙升,想着使用前后端都能共同操作的数据库来解决这个内存占用的问题,并且希望这个更具尽可能的轻量,可以嵌入到程序中是最好的,通过一个安装包进行安装。2各个数据......
  • mysql 自带的数据库下载地址
    https://dev.mysql.com/doc/index-other.html  ......
  • 【前端开发】vue3+vite项目部分优化
    1、使用rollup-plugin-visualizer可视化分析包npmirollup-plugin-visualizer-S在vite.config.js中引入 在plugins里面 然后执行npmrunbuild就自动打开可视化分析2、CDN加速在vite.config.js中引入import{autoComplete,PluginasimportToCDN}from"v......
  • Sqoop不能正常导出文件到Mysql数据库的问题解决
    之前在使用sqoop输入以下命令时bin/sqoopexport\--connectjdbc:mysql://node1:3306/journal\--usernameroot\--password123456\--tabletop_courses_by_traffic\--export-dir/user/hive/warehouse/journal.db/top_courses_by_traffic--input-fields-terminated-......
  • 编译安装CENTOS7.6+NGINX1.8+MYSQL5.7+PHP7.9+ZABBIX5.0
    LNMP系统安装环境准备:系统版本:CentOSLinuxrelease7.6.1810(Core)PHP版本:php-7.4.9NGINX版本:nginx-1.19.2MYSQL版本:MySQL5.7.43zabbix版本:zabbix-5.0.3以下为下载地址PHPNginxMYSQLzabbixPHP依赖包 把下载的源码包都上传到服务器上,并解压[root@zabbixserver......