直接alter table add index 添加索引,执行一个小时没反应,并且会导致锁表;故放弃该办法,最终解决办法如下:

一.打开mysql 命令行客户端

这里我们那可以看到导出的数据文件所存放的默认位置  C:\ProgramData\MySQL\MySQL Server 5.7\Uploads\

二. 创建新表

  1. 创建一张新表与要添加索引的表结构保持一致; CREATE TABLE 表名 LIKE 要复制的表名; (仅复制表结构)

  2. .添加索引:

    (1).添加PRIMARY KEY(主键索引)

      mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )


    (2).添加UNIQUE(唯一索引) 
      mysql>ALTER TABLE `table_name` ADD UNIQUE ( `column` )


    (3).添加INDEX(普通索引) 
      mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column` )


    (4).添加FULLTEXT(全文索引) 
      mysql>ALTER TABLE `table_name` ADD FULLTEXT ( `column`) 


    (5).添加多列索引 
      mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )

三.导出数据文件

select * from 'table_name' into outfile 'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/table.txt';

注意:这里必须为 /

  必须保证目录文件夹" C:\ProgramData\MySQL\MySQL Server 5.7\Uploads\"存在,否则报不能创建文件错误;

如果报错:The MySQL server is running with the --secure-file-priv option so it cannot execute this statement 则表示数据库参数secure-file-priv配置错误;

四.导入数据文件到新表

load data infile 'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/table.txt' into TABLE 'table_name';

给mysql一百万条数据的表添加索引的更多相关文章

  1. 处理mysql上百万条数据的优化

    php 处理上百万条的数据库如何提高处理查询速度 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字 ...

  2. mysql 插入百万条数据

    利用mysql内存表插入速度快的特点,先存储过程在内存表中生成数据,然后再从内存表插入普通表中 一.创建内存表 CREATE TABLE `vote_record_memory` ( `id` ) N ...

  3. 提高MYSQL百万条数据的查询速度

    提高MYSQL百万条数据的查询速度 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 nul ...

  4. JDBC实现往MySQL插入百万级数据

    想往某个表中插入几百万条数据做下测试, 原先的想法,直接写个循环10W次随便插入点数据试试吧,好吧,我真的很天真.... DROP PROCEDURE IF EXISTS proc_initData; ...

  5. 利用JDBC或者事物或者调用存储过程实现往MySQL插入百万级数据

    转自:http://www.cnblogs.com/fnz0/p/5713102.html 想往某个表中插入几百万条数据做下测试, 原先的想法,直接写个循环10W次随便插入点数据试试吧,好吧,我真的很 ...

  6. 教你几招,快速创建 MySQL 五百万级数据,愉快的学习各种优化技巧

    我是风筝,公众号「古时的风筝」,一个兼具深度与广度的程序员鼓励师,一个本打算写诗却写起了代码的田园码农! 文章会收录在 JavaNewBee 中,更有 Java 后端知识图谱,从小白到大牛要走的路都在 ...

  7. PHP MySQL 插入多条数据

    PHP MySQL 插入多条数据 使用 MySQLi 和 PDO 向 MySQL 插入多条数据 mysqli_multi_query() 函数可用来执行多条SQL语句. 以下实例向 "MyG ...

  8. 使用 MySQLi 和 PDO 向 MySQL 插入多条数据

    PHP MySQL 插入多条数据 使用 MySQLi 和 PDO 向 MySQL 插入多条数据 mysqli_multi_query() 函数可用来执行多条SQL语句. 以下实例向 "MyG ...

  9. 问问题_Java一次导出百万条数据生成excel(web操作)

    需求:在web页面操作,一次导出百万条数据并生成excel 分析: 1.异步生成Excel,非实时,完成后使用某种方式通知用户 2.生成多个excel文件,并打包成zip文件,因为一个excel容纳不 ...

随机推荐

  1. Java泛型与集合笔记

    第一章 Java的泛型为了兼容性和防止代码爆炸,在编译成字节碼时会进行类型擦除,编译器自动添加代码做类型转换(用到List<Integer>的地方用Integer来做转换),自动做装箱拆箱 ...

  2. App.after

    解释: App.after可以增加APP级的切面,触发的时机是在所拦截的对应生命周期方法执行之后. 方法参数:Object Object 参数说明: 参数名 类型 必填 默认值 说明 methods ...

  3. JVM虚拟机运行机制

    JVM虚拟机运行机制 什么是JVM?虚拟机是物理机器的软件实现.Java是用在VM上运行的WORA(Write Once Run Anywhere)概念而开发的.编译器将Java文件编译为Java . ...

  4. Fractal

    Fractal 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 This is the logo of PKUACM 2016. More specifically, th ...

  5. 洛谷P1378 油滴扩展(搜索)

    洛谷P1378 油滴扩展 直接暴力搜索更新答案就可以了. 时间复杂度为 \(O(n!)\) . #include<stdio.h> #include<stdlib.h> #in ...

  6. P1040加分二叉树

    据说窝回去的那几天考了n次试 过去了一个月才想起来补锅 传送 首先来区分一下什么是中序遍历,什么又是前序遍历 中序遍历:左,根,右(也就是说给出一个序列(按照中序遍历的序列),第i个点左边的点都是i的 ...

  7. 20150722---点击按钮使指定的控件可见部分平移(JS)

    前段代码: <div id="out" style=" width:400px;overflow:hidden;"> <div id=&quo ...

  8. 从有状态应用(Session)到无状态应用(JWT),以及 SSO 和 OAuth2

    不管用哪种方式认证用户,都可能被中间人攻击窃取 SessionID 或 Token,从而发生 CSRF 攻击.解决方式就是全站 HTTPS.现在 Let's Encrypt 已经支持免费的通配符 HT ...

  9. js面向对象程序设计之属性和对象

    写在博客之前的话,这是我这个刚毕业的菜鸟的第一篇博客.一口吃不成一个胖子,我也希望写的第一篇东西就让读的人醍醐灌顶.我会抱着怀疑的态度来看自己写的文章,如果有写错的地方,请大家不要被误导,如果有大神提 ...

  10. css设计丝带

    <!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8&quo ...