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

建设网站需要什么基础郴州网站建设设计

建设网站需要什么基础,郴州网站建设设计,学网站开发和游戏开发那个,篮球网站建设目标MySQL主从热备份工作原理简单的说#xff1a;就是主服务器上执行过的sql语句会保存在binLog里面#xff0c;别的从服务器把他同步过来#xff0c;然后重复执行一遍#xff0c;那么它们就能一直同步啦。整体上来说#xff0c;复制有3个步骤#xff1a;作为主服务器的Maste…MySQL主从热备份工作原理简单的说就是主服务器上执行过的sql语句会保存在binLog里面别的从服务器把他同步过来然后重复执行一遍那么它们就能一直同步啦。整体上来说复制有3个步骤作为主服务器的Master会把自己的每一次改动(每条sql语句)都记录到二进制日志Binarylog中。作为从服务器Slave 会用master上的账号登陆到 master上读取master的Binarylog,写入到自己的中继日志 Relaylog。然后从服务器自己的sql线程会负责读取这个中继日志并执行一遍。MySQL索引的作用与数据结构DB在执行一条Sql语句的时候默认的方式是根据搜索条件进行全表扫描遇到匹配条件的就加入搜索结果集合。如果我们添加索引的话首先去索引列表中查询而我们的索引列表是B类树的数据结构查询的时间复杂度为O(log2N)定位到特定值得行就会非常快所以其查询速度就会非常快。Mysql索引使用的数据结构主要有BTree索引 和 哈希索引 。对于哈希索引来说底层的数据结构就是哈希表因此在绝大多数需求为单条记录查询的时候可以选择哈希索引查询性能最快其余大部分场景建议选择BTree索引。Mysql的BTree索引使用的是B数中的BTree(https://mp.weixin.qq.com/s/jRZMMONW3QP43dsDKIV9VQ)Btree的优点为Btree的磁盘读写代价更低Btree的查询效率更加稳定MySQL 常见的两种存储引擎MyISAM与InnoDB的理解关于二者的对比与总结:两种存储引擎MyISAM与InnoDB的实现方式的不同1.主索引的区别InnoDB的数据文件本身就是索引文件。而MyISAM的索引和数据是分开的。2.辅助索引的区别InnoDB的辅助索引data域存储相应记录主键的值而不是地址。而MyISAM的辅助索引和主索引没有多大区别。MyISAM: BTree叶节点的data域存放的是数据记录的地址索引文件和数据文件是分离的。在索引检索的时候首先按照BTree搜索算法搜索索引如果指定的Key存在则取出其 data 域的值然后以 data 域的值为地址读取相应的数据记录。这被称为“非聚簇索引”。InnoDB: 其数据文件本身就是索引文件。相比MyISAM索引文件和数据文件是分离的其表数据文件本身就是按BTree组织的一个索引结构树的叶节点data域保存了完整的数据记录。这个索引的key是数据表的主键因此InnoDB表数据文件本身就是主索引。这被称为“聚簇索引(或聚集索引)”。而其余的索引都作为辅助索引(非聚集索引)辅助索引的data域存储相应记录主键的值而不是地址这也是和MyISAM不同的地方。在根据主索引搜索时直接找到key所在的节点即可取出数据在根据辅助索引查找时则需要先取出主键的值在走一遍主索引。 因此在设计表的时候不建议使用过长的字段作为主键也不建议使用非单调的字段作为主键这样会造成主索引频繁分裂。不同存储引擎的索引实现方式对于正确使用和优化索引都非常有帮助例如知道了InnoDB的索引实现后就很容易明白1、为什么不建议使用过长的字段作为主键因为所有辅助索引都引用主索引过长的主索引会令辅助索引变得过大。再例如2、用非单调的字段作为主键在InnoDB中不是个好主意因为InnoDB数据文件本身是一颗BTree非单调的主键会造成在插入新记录时数据文件为了维持BTree的特性而频繁的分裂调整十分低效而使用自增字段作为主键则是一个很好的选择。两种存储引擎MyISAM与InnoDB的功能的不同count运算上的区别因为MyISAM缓存有表meta-data(行数等)因此在做COUNT(*)时对于一个结构很好的查询是不需要消耗多少资源的。而对于InnoDB来说则没有这种缓存。是否支持事务和崩溃后的安全恢复 MyISAM 强调的是性能每次查询具有原子性,其执行数度比InnoDB类型更快但是不提供事务支持。但是InnoDB 提供事务支持事务外部键等高级数据库功能。 具有事务(commit)、回滚(rollback)和崩溃修复能力(crash recovery capabilities)的事务安全(transaction-safe (ACID compliant))型表。是否支持外键 MyISAM不支持而InnoDB支持。MyISAM更适合读密集的表而InnoDB更适合写密集的的表。 在数据库做主从分离的情况下经常选择MyISAM作为主库的存储引擎。一般来说如果需要事务支持并且有较高的并发读取频率(MyISAM的表锁的粒度太大所以当该表写并发量较高时要等待的查询就会很多了)InnoDB是不错的选择。如果你的数据量很大(MyISAM支持压缩特性可以减少磁盘的空间占用)而且不需要支持事务时MyISAM是最好的选择。(https://zhuanlan.zhihu.com/p/49947103)InnoDB的优势在于提供了良好的事务处理、崩溃修复能力和并发控制。缺点是读写效率较差占用的数据空间相对较大。MyISAM的优势在于占用空间小处理速度快。缺点是不支持事务的完整性和并发性。InnoDB支持事务处理支持外键支持崩溃修复能力和并发控制。如果需要对事务的完整性要求比较高(比如银行)要求实现并发控制(比如售票)那选择InnoDB有很大的优势。如果需要频繁的更新、删除操作的数据库也可以选择InnoDB因为支持事务的提交(commit)和回滚(rollback)。MyISAM插入数据快空间和内存使用比较低。如果表主要是用于插入新记录和读出记录那么选择MyISAM能实现处理高效率。如果应用的完整性、并发性要求比 较低也可以使用。MySQL中的锁乐观锁是一种思想具体实现是表中有一个版本字段第一次读的时候获取到这个字段。处理完业务逻辑开始更新的时候需要再次查看该字段的值是否和第一次的一样。如果一样更新反之拒绝。之所以叫乐观因为这个模式没有从数据库加锁等到更新的时候再判断是否可以更新。悲观锁是数据库层面加锁都会阻塞去等待锁。(https://juejin.im/post/5b55b842f265da0f9e589e79#comment)
http://www.zqtcl.cn/news/297476/

相关文章:

  • 长春网站建设方案咨询朝阳网站建设是什么
  • 网站开发人员是什么网页设计需要学什么书
  • 韩国食品网站设计欣赏深圳最新新闻事件头条
  • 免费的源码网站有哪些ui界面设计总结心得
  • 那个网站可以做视频app制作北京私人做网站
  • 西安市网站制作公司外贸网站建设步骤
  • 学做网站是什么专业广州建站外包公司历史长
  • 网站必备功能桂林网站建
  • 网站导航栏特效网站地图后台可以做吗
  • 站长工具亚洲高清个人网站建设研究意义
  • 网站制作哪家最好数商云怎么样
  • 做棋牌网站违法嘛免费下载百度
  • 兰州营销型网站建设直播app怎么开发
  • 生成拼贴的网站小程序源码之家
  • 想搭建网站学什么长春市建设局网站
  • 深圳做三网合一网站云主机玩游戏
  • 网站打开慢网站制作多少钱?
  • 网站制作多少钱一个月做教育培训应该注册什么公司
  • 网站价格套餐自己网站上做淘宝搜索引擎
  • 个人博客网站的设计与实现百度信息流投放
  • 廊坊网站关键字优化企业网站系统建设
  • 建设一个网站主要受哪些因素的影响php网站后台教程
  • 做购物网站学什么技术go 网站开发
  • 第一个做电子商务的网站工信部网站 备案
  • 一个完整的网站建设花都有沒有网站建设的
  • 哪个网站有适合小学生做的题目建站工具模板
  • 做家教网站赚钱么网站建设算行政工作吗
  • 网站建设seo网络推广专业的营销团队哪里找
  • 能用的网站关于申请开通网站建设的请示
  • 蓬莱网站建设哪家专业怎么样模仿网站