MySQL复习(基本操作)

索引

如果没有索引,就是将数据库中的内容全部取出,和查询结果一一对比,造成大量I/O。
如果有索引就可以大大加快查询速度。
建立索引

ALTER TABLE <table_name> ADD INDEX <index_name>(c_name);
CREATE INDEX <index_name> ON <table_name>(c_name);

一些字段不适合创建索引,比如性别,这个字段存在大量的重复记录无法享受索引带来的速度加成,甚至会拖累数据库,导致数据冗余和额外的 CPU 开销。

视图

视图是从一个或多个表中导出来的表,是一种虚拟存在的表。它就像一个窗口,通过这个窗口可以看到系统专门提供的数据,这样,用户可以不用看到整个数据库中的数据,而只关心对自己有用的数据。
可以把视图理解为一个虚拟的表.
建立视图

CREATE VIEW <v_name> (v1,v2,v3) AS SELECT <c1,c2,c3> FROM <table_name>;

文件导入导出

由于导入导出大量数据都属于敏感操作,根据 mysql 的安全策略,导入导出的文件都必须在指定的路径下进行,在 mysql 终端中查看路径变量,然后将文件拷入该路径:

show variables like '%secure%';

数据保存进表

LOAD DATA INFILE 'file_path file_name' INTO TABLE <table_name>; 

数据导出

SELECT <c_name>  INTO OUTFILE 'file_path file_name' FROM <table_name>;

数据库备份恢复

备份与导出的区别:导出的文件只是保存数据库中的数据;而备份,则是把数据库的结构,包括数据、约束、索引、视图等全部另存为一个文件。
mysqldump备份操作在终端中完成。
备份

mysqldump -u root <database_name> > <backup_name>
mysqldump -u root <database_name> <table_name> > <backup_name>

恢复

source <path name>                                 //在sql里恢复
mysql -u root <test> <  <bak.sql>                         //在终端恢复
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值