Mysql系列
文章平均质量分 89
mysql相关知识点总结
二毛不在线
这个作者很懒,什么都没留下…
展开
-
Mysql系列_高级_05_Mysql集群
简介集群作用1、数据安全:给主服务增加一个数据备份。基于这个目的,可以搭建主从架构,或者也可以基于主从架构搭建互主的架构。2、读写分离:对于大部分的JAVA业务系统来说,都是读多写少的,读请求远远高于写请求。这时,当主服务的访问压力过大时,可以将数据读请求转为由从服务来分担,主服务只负责数据写入的请求,这样大大缓解数据库的访问压力。MySQL的主从架构只是实现读写分离的一个基础。实现读写分离还是需要一些中间件来支持,比如ShardingSphere。3、故障转移-高可用:当MySQL主服务宕机后,可原创 2022-01-19 17:05:23 · 177 阅读 · 0 评论 -
Mysql系列_高级_04_Mysql锁机制
锁分类从性能上分为乐观锁(用版本对比来实现)和悲观锁从对数据库操作的类型分,分为读锁和写锁(都属于悲观锁)①读锁(共享锁,S锁(Shared)):针对同一份数据,多个读操作可以同时进行而不会互相影响②写锁(排它锁,X锁(eXclusive)):当前写操作没有完成前,它会阻断其他写锁和读锁从对数据操作的粒度分,分为表锁和行锁表锁每次操作锁住整张表。开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低; 一般用在整表数据迁移的场景。基本操作#手动增加表锁:lock t原创 2021-09-23 20:51:12 · 106 阅读 · 0 评论 -
Mysql系列_高级_03_Explain详解
本质Explain是Mysql的关键字,可以模拟优化器执行SQL语句,返回执行计划信息原创 2021-09-23 20:50:53 · 191 阅读 · 0 评论 -
Mysql系列_高级_02_索引底层数据结构
本质索引是Mysql高效获取数据的排好序的数据结构索引数据结构二叉树、红黑树、Hash表、B-TreeB-Tree特点:叶节点具有相同的深度,叶节点的指针为空所有索引元素不重复节点中的数据索引从左到右递增排序B+Tree特点:非叶子节点不存储data,只存储索引,因此会导致数据冗余,但是可以放更多的索引叶子节点包含所有的索引字段叶子节点用指针连接,提高区间访问的性能Hash表的特点:对索引的key进行一次hash计算就可以定位出数据存储的位置很多时候Hash索引要比原创 2021-07-11 18:02:29 · 72 阅读 · 0 评论 -
Mysql系列_高级_01_Mysql内部组件结构
连接器定义负责跟客户端建立连接、获取权限、维持和管理连接的部分建立连接和获取权限#建立连接mysql ‐h host[数据库地址] ‐u root[用户] ‐p root[密码] ‐P 3306如果用户名或者密码不正确,那么就会返回"Access denied for user"错误如果验证通过,连接器便会查出所拥有的用户权限,之后这个连接的权限判断都依赖与生产连接时读取的权限资料因此一个用户成功建立连接后,即使你用管理员账号对账号的权限做了修改,也不会影响已经存在的连接的权限,等用户再次原创 2021-07-11 12:03:49 · 92 阅读 · 0 评论 -
Mysql系列_基础_06_Mysql事务控制语句(TCL)
事务定义访问并更新数据库中各种数据项的一个程序执行单元,用来管理 insert,update,delete 语句。事务四大特性原子性、一致性、隔离性和持久性事务隔离级别Serializable(串行化)Repeatable read (可重复读)Read committed (读已提交)Read uncommitted (读未提交)隔离级别问题脏读、不可重复读和虚读(幻读)事务控制语句显示的开启一个事务:START TRANSACTION | BEGIN注意:在存储过程中,MYSQ原创 2020-11-26 16:53:08 · 106 阅读 · 0 评论 -
Mysql系列_基础_08_Mysql视图和触发器
视图简介实质视图是已经编译好的sql语句,没有实际的物理记录,视图也是表,虚拟表。分类①MERGE:将视图的sql语句和引用视图的sql语句合并在一起,最后一起执行,当引用视图时,引用视图的语句与定义视图的语句合并,在一些情况下可以通过视图对基表数据进行更新、删除操作,视图不可更新情况有如下几点:字段来自表达自或常数,不能insert和update,但可以delete字段来自集函数视图含有group by或者distinct视图含嵌套查询,同时内层查询语句与外层查询语句使用同样的基表,如原创 2020-11-26 13:11:28 · 88 阅读 · 0 评论 -
Mysql系列_基础_07_Mysql数据控制语句(DCL)
用户管理权限管理原创 2020-11-25 18:12:43 · 90 阅读 · 0 评论 -
Mysql系列_基础_04_Mysql数据定义语句(DDL)
DDL之create创建数据库create database db_name[character set=utf8]创建数据表create table 数据表名(字段名1 数据类型 [列级别约束条件],字段名2 数据类型 [列级别约束条件],字段名3 数据类型 [列级别约束条件])查看表结构describe 表名/desc 表名查看创建表的语句show create table 表名DDL之alter修改字段...原创 2020-11-24 17:11:49 · 63 阅读 · 0 评论 -
Mysql系列_基础_03_Mysql常用函数
字符串函数转小写:lower(string)、lcase(string)转大写:upper(string)、ucase(string)连接字符串:concat(string1, string2, …)剪切字符串:substr(string1, m, n)长度:length(string)索引位置:instr(string, substring);//返回substring首次在string中出现的位置,不存在返回0从左、右取字符:left(string, length)、right(strin原创 2020-11-22 00:47:44 · 76 阅读 · 0 评论 -
Mysql系列_基础_02_Mysql约束与数据类型
约束主键约束特点:唯一、非空列级语法:<字段名> <数据类型> PRIMARY KEY [默认值]create table student( id int(20) primary key, name varchar(50) primary key, password varchar(30));表级语法:[CONSTRAINT <约束名>] PRIMARY KEY [字段名]create table student( id int(20),原创 2020-11-20 15:47:04 · 206 阅读 · 0 评论 -
Mysql系列_基础_01_Mysql概述
简介Mysql是一种小型的开源的关系型数据库管理系统(DBMS),现属于Oracle公司。语句分类DML(数据管理语句) (相关关键字:insert、delete、update、select)DDL(数据定义语句) (相关关键字:create、drop、alter)DCL(数据控制语句) (相关关键字:grant、revoke)TCL(事务控制语句) (相关关键字:commit、rollback)Sql的三大范式第一范式(1NF):字段不可分数据表的每个列都要具有原子性,不可被分割,否原创 2020-11-20 14:18:02 · 104 阅读 · 0 评论