mysql
文章平均质量分 72
日常所需mysql的有价值的知识
柒月烈阳
自信,淡定并从容。
展开
-
MySQL_事务
事务:是一组操作的集合,他是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或者撤销操作请求,即这些操作要么同时成功,要么同时失败。(例如:银行转账)原创 2023-01-27 20:39:04 · 75 阅读 · 0 评论 -
MySQL_视图
视图中的数据并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的。当使用with check option子句创建视图时,MySQL会通过视图检查正在更改的每个行,例如插入,更新,删除,以使其符合视图定义。cascaded:会向上传递,即:子view存在检查选择时,也会同时检查是否满足父view的条件。(父view无影响)要使视图可更新,视图中的行与基础表中的行之间必须存在一对一的关系。MySQL允许基于另一个属兔创建视图,它还会检查依赖视图中的规则以保持一致性。原创 2023-02-04 17:38:39 · 545 阅读 · 0 评论 -
MySQL_索引
简介索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引优缺点优势劣势提高数据检索的效率,降低数据库的IO成本索引列也是要占用空间的。通过索引列队数据进行排序,降低数据排序的成本,降低CPU的消耗索引大大提高了查询效率,同时却也降低更新表的速度,如对表进行insert、update、delete时,效率降低。原创 2023-02-01 19:30:50 · 601 阅读 · 0 评论 -
mysql_SQL优化
批量插入如果一次性需要插入大批量数据,使用insert语句插入性能较低,此时可以使用MySQL数据库提供的进行插入。手动提交事务主键顺序插入。原创 2023-02-04 17:34:50 · 582 阅读 · 0 评论 -
MySQL_存储过程
存储过程是实现经过编译并存储在数据库中的一段SQL语句的集合,调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。用户根据需要自己定义的变量,用户变量不用提前声明,在用的时候直接用“@变量名”使用就可以。其作用域为当前连接。游标(cursor)是用来存储查询结果集的数据类型,在存储过程和函数中可以使用游标对结果集进行循环的处理。注意:在命令行中,执行创建存储过程的SQL时,需要通过关键字delimiter指定SQL语句的结束符。原创 2023-02-04 17:44:19 · 767 阅读 · 1 评论 -
MySQL_存储引擎
存储引擎就是存储数据,建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,所以存储引擎也可被称为表类型。在创建表时,指定存储引擎create table table_name(字段 1 字段 1 类型 [ comment 字段 1 注释 ] , . . . . .) engine = innoDB [ comment 表注释 ]查看当前数据库支持的存储引擎EngineSupportcomment描述Transactions(事务)XA(分布式事务\跨数据库事务)原创 2023-01-27 20:51:01 · 553 阅读 · 0 评论 -
MySQL_InnoDB引擎
表空间(ibd文件),一个mysql实例可以对应多个表空间,用于存储记录、索引等数据。段,分为数据段(Leaf node segment)、索引段(Non-leaf node segment)、回滚段(Rollback segment)InnoDB是索引组织表。数据段就是B+tree的叶子阶段;索引段即为B+Tree的非叶子节点。段用来管理多个Extent(区)。区,表空间的,每个区的大小为1M。默认情况下,InnoDB存储引擎页大小为16k,即一个区中一共有64个连续的页。原创 2023-02-11 10:55:00 · 522 阅读 · 0 评论 -
MySQL_锁
介绍锁是计算机协调多个进程或线程并发访问某个资源的机制。在数据库中,除了传统的计算资源(例如:CPU、I/O、RAM等)的互斥访问外,数据也是一种供给许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。分类MySQL中的锁,按照锁的粒度分,分为以下三类:全局锁:锁定数据库中的所有表。表级锁:每次操作锁住整张表。行级锁:每次操作锁住对应的行数据。原创 2023-02-07 20:04:04 · 762 阅读 · 0 评论 -
MySQL_触发器
触发器是与表有关的数据库对象,指在insert/update/delete之前或之后,触发并执行触发器中定义的SQL语句集合。触发器的这种特性可以协助应用在数据库确保数据的完整性,日志记录,数据校验等操作。使用别名OLD和NEW来引用触发器中发生变化的记录内容,这与其他的数据库是相似的。现在触发器还只支持触发,不支持语句级触发器。原创 2023-02-04 21:08:19 · 132 阅读 · 0 评论 -
MySQL_主从复制读写分离
主从复制是指将主数据库的DDL和DML操作通过二进制日志传到从库服务器中,然后在从库上对这些日志重新执行(也叫重做),从而使得从库和主库的数据保持同步。MySQL支持一台主库同时向多台从库进行复制,从库同时也可以作为其他从服务器的主库,实现链状复制。MySQL复制的有点主要包含以下三个方面:主库出现问题,可以快速切换到从库提供服务。实现读写分离,降低主库的访问压力。可以在从库中执行备份,以避免备份期间影响主库服务。原创 2023-02-25 20:45:39 · 538 阅读 · 0 评论 -
MySQL_修改存储位置
更改mysql的数据存储位置原创 2023-01-30 00:09:15 · 108 阅读 · 0 评论