基本命令使用(一)教案(命令的基本结构)

lxf2023-11-09 06:50:01

bitscn . com Start:net Start mySql;

输入:MySQL-urout-p/MySQL-hlocalhost-urout-p databasename;

列出数据库:显示数据库;

选择数据库:使用databaseName

列表:显示表格;;

显示表列的属性:显示tableName中的列;;

建立数据库:source fileName.txt

匹配字符:您可以使用通配符_来表示任何字符,使用%来表示任何字符串

添加字段:alter table label name add column field name date type;

添加多个字段:alter table label name add column field name 1 date type,add columnfield name 2date type。

多行命令输入:注意不要断字;插入或更改数据时,不能将字段的字符串展开成多行,否则数据中会存储硬回车;

添加管理员帐户:在*上授予全部权限。*由“密码”标识的touser @ localhost

每输入一句话后,末尾要加一个加号;或者加g;

查询时间:select now();

查询当前用户:select user();

查询数据库版本:选择版本();

查询当前使用的数据库:select database();

1.删除student_course数据库中的学生数据表:

rm -f学生_课程/学生。*

2.备份数据库:(备份数据库测试)

MySQL dump-u root-p test > c:est . txt

备份表:(备份测试数据库下的mytable表)

mysqldump-u root-p test mytable > c:est . txt

将备份数据导入数据库:(导入回测试数据库)

mysql -u root -p测试

3.创建临时表:(创建临时表增超)

创建临时表Zeng Chao(name varchar(10));

4.创建表格时,首先判断表格是否存在。

如果不存在学生,则创建表(……);

5.将现有表格的结构重新列表

创建表table 2 select * from table 1 where 11;

6.复制表格

创建表table2 select * from table1

7.重命名该表

将表table1重命名为table2

8.修改列的类型

alter table table1修改id int无符号;//修改后的列id的类型是int unsigned。

alter table table1更改id sid int unsigned//将列id的名称更改为sid,并将属性更改为int unsigned。

9.创建索引

alter table table1添加索引ind _ id(id);

在表1 (id)上创建索引ind _ id

在表1 (id)上创建唯一索引ind _ id//创建唯一的索引

10.删除索引

删除表1上的索引idx _ id

请删除索引ind _ id

11.组合字符或多列(用“:”连接列id,用“=”连接列名)

select concat(id,,name,=)from students;

12、极限(选择10到20)

select * from students order by id limit 9,10;

13.MySQL不支持的功能

事务、视图、外键和参照完整性、存储过程和触发器

14.MySQL将使用索引的操作符号。

、=、between、in、like不带%或_

15.使用索引的缺点

1)减慢添加、删除和修改数据的速度;

2)占用磁盘空;

3)增加了查询优化器的负担;

当查询优化器生成执行计划时,它会考虑索引。索引过多会增加查询优化器的工作量,导致无法选择最优的查询方案。

16.分析索引效率。

方法:增加解释;在通用SQL语句之前;

分析结果的意义:

1)表:表名;

2)类型:连接的类型,(所有/范围/引用)。其中ref最为理想;

3)possible_keys:查询可以使用的索引名;

4)key:实际使用的指标;

5)key_len:索引中使用部分的长度(字节);

6)ref:显示列名或“const”(不知道什么意思);

7)rows:显示MySQL认为在找到正确结果之前必须扫描的行数;

8) EXTRA: MySQL的建议;

17.使用较短的固定长度列。

1)尽量使用较短的数据类型;

2)尽可能使用定长数据类型;

a)用char代替varchar,定长的数据处理比变长。

更快;

b)对于频繁修改的表,磁盘容易形成碎片,从而影响数据库的整体性能

c)在数据表崩溃的情况下,具有固定长度数据行的表更容易重建。使用固定长度的数据线,每条记录的起始位置是固定记录长度的倍数,这很容易检测到,但使用可变长度的数据线就不一定了;

d)对于MyISAM类型的数据表,虽然转换成定长数据列可以提高性能,但也占用了空的较大空间;

18.使用not null和enum

尽量将列定义为not null,这样可以让数据出来的更快,要求更少空,而且MySQL在查询时不需要检查是否有特例,即空值,从而优化查询;

如果一个列只包含有限数量的特定值,如性别、有效期或学年等。,这种情况下要考虑转换成enum列的值,MySQL可以更快的处理,因为系统中所有的enum值都是用标识值来表示的;

19.使用优化表

对于频繁修改的表,容易出现碎片,导致查询数据库时需要读取更多的磁盘块,降低了查询性能。所有长度可变的表都有磁盘碎片的问题,这对于blob数据类型更为突出,因为它们的大小变化很大。您可以使用优化表来清理碎片,确保数据库性能不会下降,并优化那些受碎片影响的数据表。优化表可用于MyISAM和BDB类型的数据表。其实任何一种碎片整理方法都是用mysqldump转储数据表,然后用转储的文件重建数据表;

20.使用程序分析()

您可以使用analyze()过程来显示最佳类型的建议,这非常简单。只需在select语句后添加analyze()过程。例如:

select * from students procedure analyse();

select * from students procedure analyse(16,256);

第二条语句要求Procedureanalyze()不要建议超过16个值或256个字节的枚举类型。如果没有* *,输出可能会很长;

21.使用查询缓存

1)查询缓存如何工作:

第一次执行select语句时,服务器记住查询的文本内容和查询结果并存储在缓存中,下次遇到该语句时直接从缓存中返回结果;当数据表被更新时,对该数据表的任何缓存查询都变得无效并将被丢弃。

2)配置缓存参数:

变量:query_cache _type,是查询缓存的操作模式。有3种模式,0:无缓存;1:缓存查询,除非它以select sql_no_cache开头;2:根据需要只缓存那些以select sql_cache开头的查询;Query_cache_size:设置查询缓存的最大结果集的大小。任何大于该值的数据都不会被缓存。

22、调整硬件

1)在机器上安装更多内存

2)增加更快的硬盘,减少I/O等待时间;

寻道时间是决定性能的主要因素。逐字移动头部是最慢的。一旦磁头被定位,从磁道上读取就非常快。

3)在不同的物理硬盘设备上重新分配磁盘活动;

如果可能的话,最繁忙的数据库应该存储在不同的物理设备上,这与使用同一物理设备的不同分区不同,因为它们会竞争相同的物理资源(头)。

bitsCN.com adminjs.cn是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。 在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。 Adminjs.cn还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。 在Adminjs.cn中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!