1 索引
1)介绍
相当于书的目录,若在表中建立索引,则可以通过索引值快速找到表中的数据,加快查询的速度。
2)建立索引
// 第一种建立方式
ALTER TABLE 表名字 ADD INDEX 索引名 (列名);
ALTER TABLE employee ADD INDEX idx_id (id);
// 第二种建立方式
CREATE INDEX 索引名 ON 表名 (列名);
CREATE INDEX idx_name ON employee (name);
2 视图
1)介绍
视图,是从一个或多个表中导出来的表,是一种虚拟存在的表。
2)建立视图
CREATE VIEW 视图名(列a,列b,列c) AS SELECT 列1,列2,列3 FROM 表名;
mysql> CREATE VIEW v_emp (v_name,v_age,v_phone) AS SELECT name,age,phone FROM employee;
Query OK, 0 rows affected (0.02 sec)
mysql>
mysql> SELECT * FROM v_emp;
+--------+-------+---------+
| v_name | v_age | v_phone |
+--------+-------+---------+
| Tom | 26 | 119119 |
| Jack | 24 | 120120 |
| Jobs | NULL | 19283 |
| Tony | NULL | 102938 |
| Rose | 22 | 114114 |
+--------+-------+---------+
5 rows in set (0.01 sec)
3 导入与导出
1)介绍
导入,把一个文件里的数据保存到一张表中
2)使用
// 导入
LOAD DATA INFILE 'file-path' INTO TABLE table-name;
// 导出
SELECT * INTO OUTFILE 'file-path' FROM table-name;
4 备份与恢复
1)备份
// 备份整个数据库
mysqldump -u root database-name > backup-file-name.sql;
// 备份整个表
mysqldump -u root database-name table-name > backup-file-name.sql
2)恢复
//方法一
source backup-file-name.sql;
//方法二
1 新建一个数据库
2 mysql -u root database-name < backup-file-name.sql;