当前位置: 首页 > news >正文

集团公司网站建设策划郑州电商小程序定制

集团公司网站建设策划,郑州电商小程序定制,wordpress 说说插件,网上推广平台 怎么入手索引分类 分类含义特定关键字主键索引针对于表中主键创建的索引默认自动创建#xff0c;只能有一个PRIMARY唯一索引避免同一个表中某数据列中的值重复可以有多个UNIQUE常规索引快速定位特定数据可以有多个全文索引全文索引查找的文本中的关键字#xff0c;而不是比较索引中的…索引分类 分类含义特定关键字主键索引针对于表中主键创建的索引默认自动创建只能有一个PRIMARY唯一索引避免同一个表中某数据列中的值重复可以有多个UNIQUE常规索引快速定位特定数据可以有多个全文索引全文索引查找的文本中的关键字而不是比较索引中的值可以有多个FULLTEXT 在innodb存储引擎中根据索引的存储形式又可以分为一下两种 分类含义特点聚焦索引将数据存储与索引放到了一块索引结构的叶子节点保存了行数据必须有且只有一个二级索引将数据与索引分开存储索引结构的叶子节点关联的是对应的主键可以存在多个 聚集索引选取规则 如果存在主键主键索引就是聚集索引 如果不存在主键将使用第一个唯一unique索引作为聚集索引 如果表没有主键或没有合适的唯一索引则innodb会自动生成一个rowid作为隐藏的聚集索引 聚集索引的叶子节点下挂的是这一行的数据 。 二级索引的叶子节点下挂的是该字段值对应的主键值。 思考题以下两条SQL语句那个执行效率高? 为什么? A. select * from user where id 10 ; B. select * from user where name Arm ; 备注: id为主键name字段创建的有索引 答A 语句的执行性能要高于B 语句。 因为A语句直接走聚集索引直接返回数据。 而B语句需要先查询name字段的二级索引然 后再查询聚集索引也就是需要进行回表查询。 索引语法 创建索引 create [unique|fulltext] index index_name on table_name (index_col_name,..); 查看索引 show index from table_name; 删除索引 drop index index_name on table_name; 演示数据 create table tb_user( id int primary key auto_increment comment 主键, name varchar(50) not null comment 用户名, phone varchar(11) not null comment 手机号, email varchar(100) comment 邮箱, profession varchar(11) comment 专业, age tinyint unsigned comment 年龄, gender char(1) comment 性别 , 1: 男, 2: 女, status char(1) comment 状态, createtime datetime comment 创建时间 ) comment 系统用户表;INSERT INTO tb_user (name, phone, email, profession, age, gender, status, createtime) VALUES (吕布, 17799990000, lvbu666163.com, 软件工程, 23, 1, 6, 2001-02-02 00:00:00); INSERT INTO tb_user (name, phone, email, profession, age, gender, status, createtime) VALUES (曹操, 17799990001, caocao666qq.com, 通讯工程, 33, 1, 0, 2001-03-05 00:00:00); INSERT INTO tb_user (name, phone, email, profession, age, gender, status, createtime) VALUES (赵云, 17799990002, 17799990139.com, 英语, 34, 1, 2, 2002-03-02 00:00:00); INSERT INTO tb_user (name, phone, email, profession, age, gender, status, createtime) VALUES (孙悟空, 17799990003, 17799990sina.com, 工程造价, 54, 1, 0, 2001-07-02 00:00:00); INSERT INTO tb_user (name, phone, email, profession, age, gender, status, createtime) VALUES (花木兰, 17799990004, 19980729sina.com, 软件工程, 23, 2, 1, 2001-04-22 00:00:00); INSERT INTO tb_user (name, phone, email, profession, age, gender, status, createtime) VALUES (大乔, 17799990005, daqiao666sina.com, 舞蹈, 22, 2, 0, 2001-02-07 00:00:00);1.name字段为姓名字段该字段的值可能会重复为该字段创建索引 create index idx_user_name on tb_user(name); 2.phone手机号字段的值是非空且唯一的为该字段创建唯一索引 create unique index idx_user_phone on tb_user(phone); 3.为professionagestatus创建联合索引 create index idx_user_pro_age_sta on tb_user(profession,age,status); 4.为email建立合适的索引来提升查询效率 create index idx_user_email on tb_user(email); SQL性能分析 SQL执行频率 MySQL 客户端连接成功后通过 show [session|global] status 命令可以提供服务器状态信 息。通过如下指令可以查看当前数据库的INSERT、UPDATE、DELETE、SELECT的访问频次 -- session 是查看当前会话 ; -- global 是查询全局数据 ; SHOW GLOBAL STATUS LIKE Com_______; Com_delete: 删除次数 Com_insert: 插入次数 Com_select: 查询次数 Com_update: 更新次数 慢查询日志 慢查询日志记录了所有执行时间超过指定参数long_query_time单位秒默认10秒的所有 SQL语句的日志。 MySQL的慢查询日志默认没有开启我们可以查看一下系统变量 show variables like slow_query_log; 开启慢查询日志需要在MySQL的配置文件/etc/my.cnf中配置如下信息 [rootserver ~]# vim /etc/my.cnf#开启MySQL慢日志查询开关 slow_query_log1 # 设置慢日志的时间为2秒SQL语句执行时间超过2秒就会视为慢查询记录慢查询日志 long_query_time2 [rootserver ~]# cd /var/lib/mysql [rootserver mysql]# ll -rw-r-----. 1 mysql mysql 179 Jan 28 16:13 server-slow.log [rootserver mysql]# cat server-slow.log /usr/sbin/mysqld, Version: 8.0.35 (MySQL Community Server - GPL). started with: Tcp port: 3306 Unix socket: /var/lib/mysql/mysql.sock Time Id Command Argument #如果查询时间超过两秒便可以在此显示 [rootserver mysql]# tail -f server-slow.log /usr/sbin/mysqld, Version: 8.0.35 (MySQL Community Server - GPL). started with: Tcp port: 3306 Unix socket: /var/lib/mysql/mysql.sock Time Id Command Argument profile详细 show profiles 能够在做SQL优化时帮助我们了解时间都耗费到哪里去了。通过have_profiling 参数能够看到当前MySQL是否支持profile操作 select have_profiling; #YES select profiling; #0通过set语句在session/global级别开启profilingSET profiling 1;#查询执行语句耗时情况show profiles ;#查看指定query_id的sql语句各个阶段的耗时情况show profile for query 88;# 查看指定query_id的SQL语句CPU的使用情况show profile cpu for query 88; explain执行计划 EXPLAIN 或者 DESC命令获取 MySQL 如何执行 SELECT 语句的信息包括在 SELECT 语句执行 过程中表如何连接和连接的顺序。 #直接在select语句之前加上关键字 explain / desc EXPLAIN SELECT 字段列表 FROM 表名 WHERE 条件 ;desc select * from tb_user where id 1; explain select * from tb_user where id 1; 字段含义idselect查询的序列号表示查询中执行select子句或者是操作表的顺序 (id相同执行顺序从上到下id不同值越大越先执行)。select_type表示 SELECT 的类型常见的取值有 SIMPLE简单表即不使用表连接 或者子查询、PRIMARY主查询即外层的查询、 UNIONUNION 中的第二个或者后面的查询语句、 SUBQUERYSELECT/WHERE之后包含了子查询等type表示连接类型性能由好到差的连接类型为NULL、system、const、 eq_ref、ref、range、 index、all 。possible_key显示可能应用在这张表上的索引一个或多个。key实际使用的索引如果为NULL则没有使用索引。key_len表示索引中使用的字节数 该值为索引字段最大可能长度并非实际使用长 度在不损失精确性的前提下 长度越短越好 。rowsMySQL认为必须要执行查询的行数在innodb引擎的表中是一个估计值 可能并不总是准确的。filtered表示返回结果的行数占需读取行数的百分比 filtered 的值越大越好。
http://www.zqtcl.cn/news/868671/

相关文章:

  • 网站建设安全措施表白网站是怎么做的
  • 一个服务器可以做几个网站百度北京公司地址全部
  • 武侯区网站建设哪里好点个人社保缴费比例是多少
  • 创建属于自己的网站定制应用软件有哪些
  • 网站建设类岗位建设工程施工合同示范文本2023最新版
  • 建站设计公司wordpress 跨域 cros
  • 做网站的公司哪好工程设计东莞网站建设技术支持
  • 虹口网站开发开发公司设计管理部绩效考核
  • 网站改版升级通知国外服务器公司有哪些
  • 做网站的s标的软件深圳网站建设 湖南岚鸿
  • 设计网站建设的合同书公司装修合同范本
  • 门户网站的好处企业邮箱系统
  • 重庆企业建站公司有那些网站做结伴旅游的
  • 创意营销策划案例网站网页制作及优化
  • 网站上动画视频怎么做的建设兵团12师教育局网站
  • 博客网站开发思维导图app网站制作公司
  • 池州网站建设有哪些公司兴义网站seo
  • seo优化网站模板网站建设的七大优缺点
  • 天猫国际采取的跨境电商网络营销方式关键词排名优化公司推荐
  • 亳州建设网站做网站文字怎么围绕图片
  • 网站开发 项目计划外链建设给网站起的作用
  • 你好南京网站网站开发实施步骤和说明
  • 文化共享工程网站建设情况wordpress菠菜插件
  • 网站大气是什么意思哈尔滨做网站电话
  • 公司网站站群是什么化妆品网站设计欣赏
  • 网站公司未来计划ppt怎么做平潭做网站
  • 做网站和推广工资多少招聘网站建设价格
  • 网站建设 响应式 北京网架公司十大排名榜
  • 网站推广目标关键词是什么意思网站推广软件工具
  • 哪里可以做免费的物流网站wordpress为什么放弃