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

做的网站一直刷新成都网站制作软件

做的网站一直刷新,成都网站制作软件,最新办公室装修风格效果图,福州网站关键词转载地址#xff1a;阿里java架构教你怎么用mysql怒怼面试官​www.jianshu.com说一下mysql比较宏观的面试#xff0c;具体咋写sql的这里就不过多举例了。后面我还会给出一个关于mysql面试优化的试题#xff0c;这里主要说的索引和BTree结构#xff0c;很少提到我们的集群配…转载地址阿里java架构教你怎么用mysql怒怼面试官​www.jianshu.com说一下mysql比较宏观的面试具体咋写sql的这里就不过多举例了。后面我还会给出一个关于mysql面试优化的试题这里主要说的索引和BTree结构很少提到我们的集群配置优化方案。1.索引是什么有什么作用以及缺点答索引是对数据库表中一列或多列的值进行排序的一种结构使用索引可快速访问数据库表中的特定信息。也可以理解为索引就是一本书的目录创建索引和维护索引要耗费时间这种时间随着数据量的增加而增加。 索引需要占物理空间除了数据表占数据空间之外每一个索引还要占一定的物理空间如果要建立聚集索引那么需要的空间就会更大。2.索引的目的是什么答为了高效的查找得到我们所需要的数据减少分组和排序时间提高我们的mysql的性能3.索引对数据库系统的负面影响答虽然索引对于数据库的查询提高了效率但一定程度上增加了空间的占用同时写入的速度降低了不少和原有写入数据相比较多了一步去维护索引的操作。4.建立索引的原则答选择唯一性索引为经常需要查询、排序、分组和联合操作的字段建立索引限制索引的数目最左前缀匹配原则非常重要的原则尽量选择区分度高的列作为索引字段尽力设置不为null索引列上不计算。5.主键、外键和唯一索引的区别答 定义主键唯一标识一条记录不能有重复的不允许为空外键表的外键是另一表的主键, 外键可以有重复的, 可以是空值索引该字段没有重复值但可以有一个空值作用主键用来保证数据完整性外键用来和其他表建立联系用的索引是提高查询排序的速度个数主键主键只能有一个外键一个表可以有多个外键索引一个表可以有多个唯一索引6.MySQL底层实现MySQL有什么引擎答mysql底层采用Btree的存储结构也就是只有叶子节点携带真实数据每个节点大小为16Kb大致三层的Btree就可以存2000W左右的数据大大的减少了磁盘的IO。我们常见的存储引擎有InnoDB和MyISAM。7.InnoDB和MyISAM区别InnoDB替代了MyISAM那么MyISAM是否一无是处。答InnoDB支持事务支持行锁在磁盘上只存两个文件一个是索引文件另一个是数据文件在BTree的主键索引上叶子节点携带全部数据MyISAM不支持事务不支持行锁磁盘上存了三个文件一个是索引文件另一个是数据文件还有一个存放的对应关系文件从查询的角度来说InnoDB没有MyISAM的单条查询速度高MyISAM采用Hash存储回行得到数据的查询过程单MyISAM对于范围查询不是很友好。因此我们可以看出InnoDB用的更广一些但同时MyISAM对于非范围查询的高效还是有很大用处的而且MyISAM对于表内的总数查询维护了单独的数据也是很高效的。8.什么是事务事务特性答事务是指作为单个逻辑工作单元执行的一系列操作要么完全地执行要么完全地不执行。在我们的mysql里也是如此也就是我们的ACID原则。A原子性把一系列的动作视为一个最小的操作原子操作C一致性从一个状态到另一个状态是一致的I隔离性事务与事务之间是不可见相互隔离的D持久性一旦事务提交则所做修改就会被永久保存到数据库中。可以简单说一下可重复读的MVCC机制面试官也懵圈。9.如何设计一个高并发的系统对于mysql来讲答这个后面会结合别的技术来说只讲mysql不太好说。大致就是我们首先应该考虑到的是读写分离操作过几天博客里会详细说这个再就是我们常见的分库分表操作水平切分垂直切分。还可以加入缓存redis操作。合理使用索引explain进行sql优化。10.锁的优化策略答优化也就是最小力度的锁我们的数据也就是行锁InnoDB的行锁其实是加在索引字段的避免行锁的升级为表锁再就是我们尽量避免间隙锁尽量避免我们的范围修改如果真的必须范围修改那么我应该尽可能的缩小到最小的范围。11.优化SQL的方法答设置一个主键索引需主要主键索引一般没有真正业务含义使用int类型自动增长的而且不能为null非主键索引字段优先考虑区分度高的业务情况和最左前缀原则设置为null。如果真的数据量不大不建议加索引反而会影响效率的。选取最适用的字段属性尽可能减少定义字段宽度尽量把字段设置NOTNULL 使用连接(JOIN)来代替子查询适用联合(UNION)来代替手动创建的临时表。学会使用explain进行SQL分析实在不行可以打开trace进行分析SQL情况用完记得关闭。12.谈谈三大范式什么时候使用反范式设计答 第一范式1NF确保每列保持原子性即列不可分第二范式2NF属性完全依赖于主键也就是说在一个数据库表中一个表中只能保存一种数据不可以把多种数据保存在同一张数据库表中。第三范式3NF属性和主键不能间接相关减少数据冗余这样就可以通过主外键进行表之间连接比如我们表比较多需要关联时但我们的A表只需要关联B表的一个字段而且每次都需要关联查询你这时我们可以采用A表放置一个冗余字段来存B表的那个字段。这个操作其实就是一个反范式的。13.说几个mysql中你常用的函数答sum、count 、avg、min、max14.varchar(100)和varchar(200)的区别答占用内存空间大小肯定是不一致的但是占用我们磁盘的大小是一致的我们存储字符串abc完全是一样的磁盘空间但是对于varchar(100)来说接收到的字符串长度太长了就会报错的。后面的数字代表可存储的字节数。15.varchar(20)和int(20)中的20含义一样吗答显然不一致 int(M) M表示的不是数据的最大长度只是数据宽度并不影响存储多少位长度的数据varchar(M) M表示的是varchar类型数据在数据库中存储的最大长度超过则不存16 .如何开启慢日志查询答 有2种方式一是修改mysql的配置文件二是通过set global语句来实现。slow_query_log ON打开日志long_query_time 2设置时间2秒就算是慢查询然后重启mysql服务即可进入mysql控制台输入SET GLOBAL slow_query_log ON;SET GLOBAL long_query_time X;不需要重启服务就可以得到慢查询日志。总结一下只要我们熟知我们mysql的底层是Btree的Btree是什么样子的很多面试题都是围绕这个东西来出题的为什么不为空空不好找Btree的位置啊等等。再就是我们要学会使用Explain来分析sql有的时候即使有覆盖索引mysql也不一定去走的他内部底层会判断走这个索引的代价。可以自行尝试。然后就是我们的事务也是很重要的一部分。总之不管他怎么问我们我们真的理解了其中的原理就算是题再怎么变化也脱离不了底层原理的我们要学会加法而不是要学会11。
http://www.sadfv.cn/news/32614/

相关文章:

  • 免费 个人 网站成都网站制
  • php 企业网站模板玉林市建设工程交易中心网站
  • 泉州四方网站开发开发公司名称起名大全
  • 百度sem代运营沈阳网站优化哪家好
  • 东莞做网站推广公司怎么制作个人作品网站
  • 网站中的关键词seo设置长沙楼盘信息官网
  • 手机网站开发专业做IT的会做网站吗
  • 网站建设所需费用明细wordpress点击文章不能进入
  • 简约网站程序正规外贸流程
  • 织梦网站关键词手机网站端域名怎样做解析
  • 怎么编辑网站后台网页游戏排行榜前十名大型网络游戏
  • 渭南哪家公司可以做网站网页开发界面设计
  • 网站开发 重庆数据分析师课程
  • 门户网站建设哪家好咸阳网站建设费用
  • 巴南市政建设网站icp是什么
  • 中国建设银行金华分行网站网络搜索优化
  • 国外建站工具创意产品
  • 如何建立自己的网站教程wordpress 调用链接
  • 网站制作教学陕西建筑招聘网
  • 新绛做网站企业名称怎么取名
  • 页制作与网站建设技术大全电话销售网站建设多少钱一个月
  • 怎么接网站开发外包网站开发培训多少钱
  • 英文网站建设怎么样帮人推广注册app的平台
  • 网站建设规划大纲仿网站建设教程视频教程
  • 做传奇网站怎么弄的教育网站如何做seo
  • 视频在线网站免费观看自己优化网站
  • 网站图片怎么做优化上海房产网二手房出售信息
  • 四川省建设人才网站2018wordpress点注册后一直不出来
  • 职友集 一家做公司点评的网站百度快速收录在线提交工具
  • 网站经营wordpress 财经主题