在MySQL已经成功启动的前提下,输入以下命令:这样一个名为shop的数据库就创建成功了。图4.1查看系统内数据库在图4.1中,第一个数据库information_schema是MySQL自带的,该数据库存储了所有MySQL服务器管理的数据库信息,比如数据库名、数据库的表、表的数据类型及访问权限等。图4.2非法的数据库名如果要创建的数据库名字在MySQL中已经存在,也会发生错误。......
2025-09-30
对系统的优化是一项重要的工作,同时也是一个复杂的任务。本节将介绍两种性能优化的方式,优化SQL查询和优化数据库服务器。
1.优化SQL查询
提高查询速度一个很重要的工具莫过于索引了,索引是数据库中重要的数据结构,使用索引能够很大程度上提高查询效率。
假设目前有一个职工表employee。现在要查找emp_id为33的员工的名字,如果employee表没有索引,那么在查找符合条件的条件时,将会把整个表中的数据都浏览一遍。当这个表很大,而符合条件的记录又非常少时,显而易见,效率就会非常低。
给employee表增加索引后,索引会按编号对行进行排序,当查找记录时,MySQL会先查找索引以找到匹配的记录,找到后程序结束执行。正因为索引将数据进行了有序的排列,使得查询的速度增加了许多。
虽然索引能够很大程度上提高查询效率,但是并非要在每个字段上都增加索引,滥用索引不仅不能改善性能,还可能造成系统效率低下。使用索引最重要的一点就是合理性,下面是建立索引的几个原则。
➢ 在SQL语句中频繁进行GROUP BY和ORDER BY的字段上建立索引。(https://www.chuimin.cn)
➢ 使用唯一索引:如果数据时唯一的,尽量使用唯一索引,因为唯一索引更能提高系统性能。
➢ 建立复合索引:设计一个良好的复合索引建立在多个列上。
➢ 不使用索引:对于不同值很少的字段不要建立索引,如性别字段,只有两个值——男和女。
2.优化数据库服务器
通过调节数据库服务的一些设置,也可在一定程度上更好地发挥MySQL的性能。在命令提示符中输入以下的命令可得到所有mysqld选项和可配置变量的列表:
在MySQL服务器中,需要配置的两个最重要的变量时key_buffer_size和table_cache了,其中key_buffer_size控制索引缓冲可以使用的内存的数量,它的值越大,索引可使用的内存越多;table_cache控制表高速缓冲的大小,如果增加table_cache值可以更快速地访问表中的内容。
相关文章
在MySQL已经成功启动的前提下,输入以下命令:这样一个名为shop的数据库就创建成功了。图4.1查看系统内数据库在图4.1中,第一个数据库information_schema是MySQL自带的,该数据库存储了所有MySQL服务器管理的数据库信息,比如数据库名、数据库的表、表的数据类型及访问权限等。图4.2非法的数据库名如果要创建的数据库名字在MySQL中已经存在,也会发生错误。......
2025-09-30
图2.1MySQL安装欢迎界面双击安装,进入了MySQL的安装欢迎界面。图2.3MySQL安装目录确认界面在图2.3中,这个界面可以看到一些初始化的信息。图2.4MySQL安装完成界面点击“Next”按钮,出现一些MySQL公司简介和功能的简介。第一个是将要详细的配置MySQL Server中的内容。图2.13MySQL数据库端口第一个设置端口,默认为3306。图2.15MySQL服务配置MySQL的服务配置,第一个选项是安装在windows下的服务,服务名可以自行设置。图2.17MySQL执行配置执行配置完成后,如图2.18所示。......
2025-09-30
MySQL要求AUTO_INCREMENT属性用于作为主键的列。与之相反,忽略BINARY属性时,将使用不区分大小写的方式排序。否则,默认值将依赖于字段的数据类型。简言之,提供该属性是为了保证数据库兼容性。将不允许向该列插入NULL值。建议在重要情况下始终使用NOT NULL属性,因为它提供了一个基本验证,确保已经向查询传递了所有必要的值。PRIMARY KEYPRIMARY KEY属性用于确保指定行的唯一性。......
2025-09-30
由于不是所有的用户都习惯于用命令行程序,所以开发了GUI程序。下面就介绍一下SQLyog。SQLyog是业界著名的Webyog公司出品的一款简洁高效、功能强大的图形化MySQL数据库管理工具。使用SQLyog可以快速直观地让您从世界的任何角落通过网络来维护远端的MySQL数据库。图2.19SQLyog连接数据库进入管理界面,如图2.20所示。图2.22SQLyog查询视图结果视图,如图2.23所示。图2.23SQLyog结果视图数据库选择、常用工具栏,如图2.24所示。图2.25SQLyog菜单栏SQLyog常用技巧: Ctrl+Enter代码提示。......
2025-09-30
当创建表时,必须指定表名、列名及数据类型。图4.5创建表stuinfo创建完表以后可使用show tables命令来查看当前数据库中可用的表。图4.7创建表item在图4.7中创建了一个名为item的表。在字段other中,null表示允许该列为空,若没有特别指定该列为null或not null,默认情况下该列允许为空。图4.8查看表item的表结构要查看注释标识可通过show create table命令。......
2025-09-30
噪声系数是收信设备的重要指标,数字微波收信机的噪声系数一般为3~7dB。收信机要使接收的已调信号无失真地通过,就要具有足够的工作频带宽度,即通频带。为了有效地抑制噪声干扰,获得最佳信号传输,应该选择合适的通频带和通频带形状。接收机的通频带特性主要由中频滤波器决定。选择性是指接收机只接收本波道的信号,对通频带以外各种干扰具有抑制能力,尤其是要抑制邻近波道干扰、镜像干扰和本机收发之间的干扰等。......
2025-09-29
事实上,这有很多用处,但是如果需要从一些不同的MySQL服务器上聚合数据,其中有些服务器可能位于网络之外甚至归另外的公司所有,这时该怎么办?为缓解此问题,可以使用MySQL 5.0.3可用的FEDERATED存储引擎,创建远程表的本地指针。因为创建FEDERATED表的过程与其他表稍有不同,所以需要做一些补充解释。为此,在服务器B上创建一个相同的表结构,唯一的区别是该表引擎类型应当为FEDERATED,而不是MyISAM。减少连接管理的麻烦并不是FEDERATED表的唯一目的。......
2025-09-30
不属于1NF的关系称为非规范化关系,见表1.4;经过转化形成规范化的关系,记作关系模式SCD,见表1.5。表1.4非规范化关系表1.5规范化关系第一范式还可以理解为:每一个数据项都不能拆分成两个或两个以上的数据项。表1.6SC表表1.7SD表这两个表都不存在部分依赖,它们都是第二范式。表1.8S表表1.9D表可以看出,S表和D表各自描述单一的现实事物,都不存在传递依赖关系,都是第三范式。......
2025-09-30
相关推荐