MySQL数据库优化技术概述

对于一个以数据库为中心的应用,数据库的优化直接影响到程序的性能,因此数据库性能至关重要。一般来说,要保证数据库的效率,要做好以下几个方面的工作:

1、 数据库表设计:
  表的设计合理化(符合3NF);

2、 添加适当索引(index):
  普通索引:
  主键索引: primary 效率最高,但是只能有一个
  唯一索引:unique
  全文索引:fulltext 对文章中的词进行索引
  空间索引:SPATIAL 很少使用

3、 分表技术:
  水平分割
  垂直分割

4、 读写分离:
  写:update/delete/insert

5、 存储过程
  模块化编程,可以提高速度

6、 对mysql配置优化
  配置最大并发数(默认是100),在my.ini配置文件中,一般网站调整到1000左右。一个并发开一个进程为之服务,过大的话将会占用很大的内存;
  调整缓存大小;

7、 MySQL硬件服务器升级

8、 定时的清除不需要的数据,定时进行碎片整理(MyISAM)

时间: 2024-10-24 20:37:00

MySQL数据库优化技术概述的相关文章

Mysql数据库优化技术之配置篇、索引篇 ( 必看 必看 转)

转自:Mysql数据库优化技术之配置篇.索引篇 ( 必看 必看 ) (一)减少数据库访问 对于可以静态化的页面,尽可能静态化 对一个动态页面中可以静态的局部,采用静态化 部分数据可以生成XML,或者文本文件形式保存 使用数据缓存技术,例如: MemCached (二)优化的检测方法 1.用户体验检测 2.Mysql状态检测 在Mysql命令行里面使用show status命令,得到当前mysql状态. 主要关注下列属性: key_read_requests (索引读的请求数)(key_buffe

MySQL数据库优化技术之SQL语句慢查询定位

通过show status命令了解各种SQL的执行频率 MySQL客户端连接成功后,通过使用show [session|global] status 命令可以提供服务器状态信息: 其中的session来表示当前的连接的统计结果,global来表示自数据库启动至今的统计结果,默认是session级别的. show status 常用命令: show status like 'com_%'; 其中com_xxx表示xxx语句所执行的次数: 重点注意com_select, com_insert, co

MySQL数据库优化技术之数据库表的设计

三范式介绍表的范式:只有符合的第一范式,才能满足第二范式,进一步才能满足第三范式. 1. 第一范式:表的列具有原子性,不可再分解.只要是关系型数据库都自动满足第一范式.数据库的分类:关系型数据库:MySQL/ORACLE/Sql Server/DB2等非关系型数据库:特点是面向对象或者集合nosql数据库:MongoDB(特点是面向文档) 2. 第二范式:表中的记录是唯一的,就满足第二范式.通常我们设计一个主键来实现.主键一般不含业务逻辑,一般是自增的: 3. 第三范式:表中不要有冗余数据,即如

中国移动MySQL数据库优化最佳实践

原创 2016-08-12 章颖 DBAplus社群 本文根据DBAplus社群第69期线上分享整理而成,文末还有书送哦~ 讲师介绍章颖 数据研发工程师 现任中国移动杭州研发中心数据研发工程师,擅长MySQL故障诊断,性能调优,MySQL高可用技术,曾任中国电信综合平台开发运营中心DBA 开源数据库MySQL比较容易碰到性能瓶颈,为此经常需要对MySQL数据库进行优化,而MySQL数据库优化需要运维DBA与相关开发共同参与,其中MySQL参数及服务器配置优化主要由运维DBA完成,开发则需要从数据

关于MySQL数据库优化的部分整理

在之前我写过一篇关于这个方面的文章 <[原创]为什么使用数据索引能提高效率?(本文针对mysql进行概述)(更新)> 这次,主要侧重点讲下两种常用存储引擎. 我们一般从两个方面进行MySQL数据库优化: A.SQL语句的优化. 这点,需要我们在写SQL的时候要特别注意,在建表的时候也非常注意. 1 尽量不要在列上进行运算,这样会导致索引失效. 2 使用JOIN时候,应使用小结果集驱动大结果集.把复杂的JOIN拆分成多个QUERY.在多JOIN的时候,最容易导致锁表和堵塞. 3 在使用LIKE进

[mysql][【优化集合】mysql数据库优化集合

三个层面: 1.系统层面 2.mysql配置参数 3.sql语句优化 =========================================================== 一.系统层面 =========================================================== 二.mysql参数层面 http://www.oicto.com/mysql-explain-show/ 2.1slowlog 配置slowlog 配置文件: log-slow

&#8203;Mysql数据库优化总结

Mysql数据库优化总结 -----杜 说明:本文的环境为CENTOS 5.5 64 Bit /Mysql 5.1.50 简介:使用Mysql有一段时间了,期间做了不少关于Mysql优化.设计.维护的工作,这两天有时间做一下简单的总结,方便自己回忆,同时也希望能对大家有点帮助. I            硬件配置优化 CPU选择:多核的CPU,主频高的CPU 内存:更大的内存 磁盘选择:更快的转速.RAID.阵列卡, 网络环境选择:尽量部署在局域网.SCI.光缆.千兆网.双网线提供冗余.0.0.

MySQL数据库优化详解(收藏)

MySQL数据库优化详解 mysql表复制 复制表结构+复制表数据mysql> create table t3 like t1;mysql> insert into t3 select * from t1;mysql索引 ALTER TABLE用来创建普通索引.UNIQUE索引或PRIMARY KEY索引ALTER TABLE table_name ADD INDEX index_name (column_list)ALTER TABLE table_name ADD UNIQUE (colu

关于MySQL数据库优化

MySQL数据库优化相关知识: 一.两种常用引擎的选择 1.MyISAM 当MySQL版本小于5.5时的默认引擎 优点:擅长数据处理:高速读写:数据的存储顺序为插入顺序,插入速度快:空间占用量小 特性:全文索引支持(版本大于等于5.6的Innodb也支持),可以利用myisamPack完成数据的压缩功能 缺点:仅支持表级锁定,支持并发插入,写操作中插入操作不会影响其他操作.不支持事务 2.InnoDB 版本大于等于5.5的默认引擎 优点:提供事务,行级锁定,外键约束,注重数据的完整性和安全性 特