`
Donald_Draper
  • 浏览: 981024 次
社区版块
存档分类
最新评论

mysql 大表添加索引注意事项

阅读更多
LINXU top命令:
http://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316399.html
我的表记录8674132,表大小大约2G;
添加主索引
ALTER TABLE USER ADD PRIMARY KEY (ID) ;
添加普通索引
ALTER TABLE USER ADD INDEX (NAME ) ;
添加索引的时候要缺确保内存足够,以我的来看,内存需要3G,磁盘需要4G,这只是保守估计
有时候添加索引的时候mysql会处理睡眠状态,得不到足够的CPU时间片
我们可以调整mysql进程的有限级
renice -20 15134
-20为nice值,15134为pid,进程的优先级PR我们是无法调整的可以通过nice来改变
PR(new) = PR(old) + nice
以下是添加普通索引内存的使用情况


开始有2.8G左右


处于稳定是还有800M
以下为磁盘使用情况:



开始有18G


处于稳定中还有14G
测试:
未建索引前:
SELECT * FROM USER WHERE NAME LIKE '西岸村大槎%'
耗时17.683s
建完索引后:
耗时0.010s
SELECT * FROM USER WHERE NAME LIKE '%西岸村大槎%'
耗时20.128s
从上可以得知:以%开头的字符串匹配不适用索引;另外对于varchar建索引,null字符串能用到索引,所以一般不会影响效率和性能,相反的,在oracle上的索引,里不包含null值,所以如果你查 null的数据,就会用不到索引,会受到影响 。


  • 大小: 15.6 KB
  • 大小: 81.7 KB
  • 大小: 19 KB
  • 大小: 16.3 KB
分享到:
评论

相关推荐

    mysql索引使用技巧及注意事项

    - 使用ALTER TABLE语句:在表创建后添加索引,可以创建普通索引、UNIQUE索引和PRIMARY KEY索引。 - 使用CREATE INDEX语句:在创建表时或之后创建普通索引和UNIQUE索引。 示例: ```sql ALTER TABLE table_...

    mysql的介绍及安装注意事项.zip

    本教程将详细介绍MySQL的基本概念、功能以及安装过程中的注意事项。 一、MySQL基本介绍 MySQL的核心特性包括支持ACID(原子性、一致性、隔离性和持久性)事务、多种存储引擎(如InnoDB用于事务处理,MyISAM用于快速...

    Oracle的表结构转成Mysql的表结构

    #### 已知限制与注意事项 - **不支持的功能**:此函数目前不支持Oracle中的分区、函数索引、位图索引等特殊索引定义、自定义数据类型、ROWID、RAW等特殊数据类型、外键以及自定义约束。 - **数据类型转换**:Oracle...

    MySQL索引的缺点以及MySQL索引在实际操作中有哪些事项

    以下的文章主要介绍的是MySQL索引的缺点以及MySQL索引在实际操作中有哪些事项是值得我们大家注意的,我们大家可能不知道过多的对索引进行使用将会造成滥用。因此MySQL索引也会有它的缺点: 虽然索引大大提高了查询...

    pgsql数据库转mysql数据库步骤及注意.docx

    PgSQL 到 MySQL 数据库迁移步骤和注意事项 数据库迁移是数据库管理中最重要的一步骤,PgSQL 到 MySQL 数据库迁移是一种常见的迁移方式。本文档将详细介绍PgSQL 到 MySQL 数据库迁移的步骤和注意事项。 Step 1: ...

    Mysql临时表使用说明

    1. **大数据量筛选**:当需要从大表中提取少量数据进行后续处理时,先将所需数据加载到临时表中,再在临时表上执行查询往往比直接在大表上操作更高效。 2. **复杂查询中间结果存储**:在构建复杂的多步骤查询时,...

    MySQL索引类型总结和使用技巧以及注意事项

    使用索引的技巧和注意事项: - 索引并非总是有益的,它们会占用磁盘空间,并可能减慢写操作(INSERT、UPDATE、DELETE)。因此,应在频繁查询且数据量大的列上创建索引。 - 对于字符串列,考虑使用前缀索引(如`name...

    mysql+面试题+2022最新

    这个问题考察的点: 线上高并发下的添加大表建索引 当表数据量很大时,建立索引或者修改表结构会很慢,而且在操作的过程中,数据库甚至处于死锁状态,那么有没有其他的好的办法呢? 方式1、“影子策略” 创建一张...

    MySql 5.1 参考手册.chm

    2.12. 具体操作系统相关的注意事项 2.12.1. Linux注意事项 2.12.2. Mac OS X注意事项 2.12.3. Solaris注意事项 2.12.4. BSD注意事项 2.12.5. 其它Unix注意事项 2.12.6. OS/2注意事项 2.13. Perl安装注意事项 2.13.1....

    MySQL 5.1参考手册

    2.12. 具体操作系统相关的注意事项 2.12.1. Linux注意事项 2.12.2. Mac OS X注意事项 2.12.3. Solaris注意事项 2.12.4. BSD注意事项 2.12.5. 其它Unix注意事项 2.12.6. OS/2注意事项 2.13. Perl安装注意事项 ...

    mysql迁移至8.0时的注意事项(小结)

    MySQL数据库在从较低版本升级到8.0时,会遇到一系列与兼容性、安全性相关的注意事项。以下是关键要点的详细说明: 1. **密码模式**: MySQL 8.0默认的密码验证插件是`caching_sha2_password`,提高了安全性,但...

    MySQL 5.1中文手冊

    2.12. 具体操作系统相关的注意事项 2.12.1. Linux注意事项 2.12.2. Mac OS X注意事项 2.12.3. Solaris注意事项 2.12.4. BSD注意事项 2.12.5. 其它Unix注意事项 2.12.6. OS/2注意事项 2.13. Perl安装注意事项 2.13.1....

    MySQL 5.1官方简体中文参考手册

    2.12. 具体操作系统相关的注意事项 2.12.1. Linux注意事项 2.12.2. Mac OS X注意事项 2.12.3. Solaris注意事项 2.12.4. BSD注意事项 2.12.5. 其它Unix注意事项 2.12.6. OS/2注意事项 2.13. Perl安装注意事项 2.13.1....

    Mysql增加外键的方法

    本文详细介绍了在MySQL中增加外键的方法,并提供了使用PHPMyAdmin管理工具和SQL语句来实现外键添加的操作步骤和注意事项。 首先,要成功地在MySQL中增加一个外键,需要满足几个前提条件: 1. 本表的列必须与外键...

    MySQL 5.1参考手册 (中文版)

    2.12. 具体操作系统相关的注意事项 2.12.1. Linux注意事项 2.12.2. Mac OS X注意事项 2.12.3. Solaris注意事项 2.12.4. BSD注意事项 2.12.5. 其它Unix注意事项 2.12.6. OS/2注意事项 2.13. Perl安装注意事项 2.13.1....

    MySQL 5.1参考手册中文版

    2.12. 具体操作系统相关的注意事项 2.12.1. Linux注意事项 2.12.2. Mac OS X注意事项 2.12.3. Solaris注意事项 2.12.4. BSD注意事项 2.12.5. 其它Unix注意事项 2.12.6. OS/2注意事项 2.13. Perl安装注意事项 ...

    MySQL5.1参考手册官方简体中文版

    2.12. 具体操作系统相关的注意事项 2.12.1. Linux注意事项 2.12.2. Mac OS X注意事项 2.12.3. Solaris注意事项 2.12.4. BSD注意事项 2.12.5. 其它Unix注意事项 2.12.6. OS/2注意事项 2.13. Perl安装注意事项 2.13.1....

    MYSQL中文手册

    2.12. 具体操作系统相关的注意事项 2.12.1. Linux注意事项 2.12.2. Mac OS X注意事项 2.12.3. Solaris注意事项 2.12.4. BSD注意事项 2.12.5. 其它Unix注意事项 2.12.6. OS/2注意事项 2.13. Perl安装注意事项 ...

    MySQL 8.0 Release Notes

    #### 升级注意事项 在升级到 MySQL 8.0 之前,需要注意以下几点: - **备份数据**:强烈建议在升级前进行数据备份,以防万一出现任何问题导致数据丢失。 - **测试环境验证**:首先在测试环境中进行升级,确保...

Global site tag (gtag.js) - Google Analytics