zoukankan      html  css  js  c++  java
  • python | mysql 笔记

    1. 存储引擎:存在引擎就是存储机制,数据按照什么样方式存储,怎么存

       查看所有存储引擎

       show enginesG

    概念:

    事务:

      操作一系列sql语句,只有都执行成功的才算成功,有一个不成功,就恢复到最初始的状态,这个就是事务

    表级锁:

      有一个人在修改这张表,就会上锁,其他人不能修改

      特点:内存开销大小,不支持并发

    行级锁:

      有一个人在修改这张表中的一条记录(数据),这个条数据就会上锁,其他人不能修改这个条数据

      特点:内存开销大,支持并发

      (一般使用在大型网站例如:淘宝,京东 其中修改一条数据不能同时修改,但是其他数据是可以修改的,表级锁不可以)

    外键:

        把多张表通过一个字段关联到一起,叫做外键(一般同表的ID来建立表的关联的)

      

      种类:

      InnoDB : 5.6 之后默认的存储引擎

          特点: 支持实务,行级锁,外键

      MyISAM :5.6 之前默认的存储引擎

          特点:表级锁.

      MEMORY :用内存来存储数据(缓存)[目前更多使用的是redis数据库,来取代]

           特点:速度快,不能进行持久化存储

           (redies,如果在断开时候,会生成一个文件,所以起到一个持久存储的作用)

      BLACKHOLE:黑洞, 用作同步数据的一种引擎方式,[主从数据库集群]

            特点:所有数据不会写入,但是会提示成功,

      

      BLACKHOLE使用场景

      ***** 如图 :用户访问网站时候,先通过负载均衡系统,来进行用户的分发,底层会用一些类似取模的算法,给用户进行分配,目的让服务器,所抗住的并发均衡;

          有的用户需要查询,有的用户需要修改或者添加,但是整体查询次数会远远大于增删改的次数,

          那么这时搭建主从数据库,主数据库主要负责写入,从数据库负责读取,

          为了让主从数据库,数据同步,中间加上一台服务器,用于同步,那么这台服务器所用的存储引擎就是blackhole

          专门帮助主数据库进行binlog日志生成和分发,从数据库拿到binlog日制后,开始同步自己的数据

          这样好处,主数据只专注写入,不用考虑分发其他数据等操作,减少服务器的压力;

          中间blackole 的mysql 服务器不需要生产或者消费数据,只是单纯的过滤生产binlog日志,所以选择blackhole存储引擎.

        

  • 相关阅读:
    cs61b project1
    CS61b lab5
    leetcode DP
    Leetcode 还未解决的bug
    Git使用总结
    Mac TensorFlow Anaconda
    eclipse C++ ld: 1 duplicate symbol for architecture x86_64
    Leetcode Hashtable 1-5
    EC 601 PYTHONPATH
    EC 601 OpenCV Install
  • 原文地址:https://www.cnblogs.com/huangjiangyong/p/11029454.html
Copyright © 2011-2022 走看看