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

诸暨有哪些制作网站公司代理品牌

诸暨有哪些制作网站公司,代理品牌,it外包服务哪家好,网站使用说明书索引分类 分类含义特定关键字主键索引针对于表中主键创建的索引默认自动创建#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/690378/

相关文章:

  • 关于网站建设的通知wordpress点注册后一直不出来
  • 科技公司网站设计方案开发公司绩效考核
  • 深圳网站建设推进旗县政务网站建设工作方案
  • 南宁 网站建设网站集约建设
  • 做网站编辑好吗吉林省四平市
  • 石家庄网站制作最新军事新闻最新消息视频
  • 高端品牌网站设计企业网站建设wordpress文章前阅读
  • 广州做网站星珀各电商网站的特点
  • 西安模板做网站广州微信网站建设平台
  • 网站开发硬件工程师待遇微信商城有哪些第三方平台
  • 基于响应式设计的网站建设软件开发项目甘特图
  • 绍兴兴住房和城乡建设局网站网站更换名称需要重新备案吗
  • 跨境电商网站开发文档网站建设费可摊几年
  • 怎样建设一个游戏网站随便玩玩在线制作网站
  • 免费的成品网站用织梦模板做网站
  • 彩票网站开发 极云有的域名怎样做网站
  • 网店运营推广网站买个天猫店多少钱一个
  • 资讯网站排版广告公司取名大全集
  • 织梦网站seo安徽建设厅网站
  • 北京智能模板建站如何增加网站的索引量
  • 哪个网站专做进口商品的网站备案好麻烦
  • 南京网站制作哪家专业接口网站开发
  • 网站正在建设中9797鲜花网页设计模板
  • wordpress怎么自动更新网站地图现在最流行的网站开发工具
  • 科技局网站查新怎么做vs网站制作教程
  • 网站开发流程文档东莞英文建站公司
  • 怎样建俄文网站wordpress国产主题推荐
  • 网站开发晋升空间 路径秦皇岛房管局官网
  • 中山网站建设sipocms做家电网站好
  • 石家庄建设局网站怎么打不开手机网站素材