索引和备份

索引:
汉语字典中的汉字按页存放,一般都有汉语拼音目录(索引)、偏旁部首目录等
我们可以根据拼音或偏旁部首,快速查找某个字词


索引是一种有效组合数据的方式,为快速查找到指定记录
作用
大大提高数据库的检索速度
改善数据库性能
MySQL索引按存储类型分类
B-树索引:InnoDB、MyISAM均支持
哈希索引
常用的索引类型:
普通索引:
基本索引的类型
允许在定义的索引列中插入重复的值和空值
唯一索引:
索引数据不重复
允许有空值
主键索引:
主键列中每个值是飞空的,唯一的
一个主键将自动创建主键索引
复合索引:
将多个列组合作为索引
全文索引:
支出值的全文查找
允许重复值和空值
空间索引:
对空间数据类型的列建立的索引


创建索引:
     
CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
       ON table_name (column_name[length]…);唯一索引、全文索引或空间索引,可选


删除索引:
DROP  INDEX index_name ON table_name;
删除表时该表的索引同时会被删除


例子:
在student表的studentName列创建普通索引
USE myschool;
CREATE  INDEX `index_student_studentName`
ON `student`(`studentName`);


查看索引:
SHOW INDEX FROM table_name;


例子:
USE myschool;
SHOW INDEX FROM student;


备份:


mysqldump 可选参数 –u 用户名 –h host –p密码
数据库名 表明>创建的文件名
例子:
mysqldump –u root –p myschool student > d:\backup\myschool_20160808.sql
备份常用参数:


-add-drop-table
在每个CREATE TABLE语句前添加DROP TABLE语句,默认是打开的,可以用-skip-add-drop-table来取消
--add-locks
该选项会在INSERT 语句中捆绑一个LOCK TABLE 和UNLOCK TABLE 语句
好处:防止记录被再次导入时,其他用户对表进行的操作
-t或-no-create-info
只导出数据,而不添加CREATE TABLE语句
-c或--complete-insert
在每个INSERT语句的列上加上列名,在数据导入另一个数据库时有用
-d或--no-data
不写表的任何行信息,只转储表的结构
使用mysql命令恢复数据库
mysql –u 用户名 –p 数据库名 < 备份文件名


导出数据:
SELECT  *  FROM tablename 
         [WHERE contion]
         INTO OUTFILE 'filename' [OPTION]


例子:
将成绩表中“Logic Java”课程的成绩信息导出到文本文件


SELECT * FROM result
WHERE subjectNo = 
(SELECT subjectNo FROM subject 
WHERE subjectName = 'Logic Java')
INTO OUTFILE d:/backup/result_Java.txt
导入数据:
 LOAD DATA INFILE filename INTO TABLE tablename [OPTION]
例子:
将数据从文本文件导入到myschoolDB的result表
LOAD DATA INFILE 'd:/back/result_Java.txt' INTO TABLE result;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值