![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
文章平均质量分 86
phn555
生活,就应当努力使之美好起来
展开
-
mysql篇
mysql 权限如何管理?答MySQL的权限分为 表权限、列权限、过程权限。权限分布可以设置的权限表权限select,insert,update,delete,create,deop,grant,index,alter,refernces列权限select,insert,update,refernces过程权限execute,alter routine,grant通过权限表来控制用户对数据库的访问,主要有下面四张表:user,db,table_priv原创 2022-04-27 21:16:06 · 1175 阅读 · 0 评论 -
Mysql Innodb 事务实现原理
ACID原子性:要么都成功,要么都失败一致性:事务前后状态一致,比如某张表的id是唯一约束,不能重复。则无论事务成功失败,都不能出现重复的id。隔离性:A事务不应该访问到B事务没有提交的数据持久性:事务一旦提交,结果是永久的。事务分类1. 扁平事务最简单也最频繁的事务。就是begin开始,中间一个或几个编辑操作,然后一起提交。整体要么都成功要么都失败。缺点:只能全部回滚,不能部分回滚。在某些大事务中,代价太大2. 带保存点的扁平事务对上诉问题的优化处理,可以设置保存点,回滚原创 2021-06-02 16:51:40 · 481 阅读 · 0 评论 -
Mysql Innodb锁实现
lock与latchlatch:闩锁,一种轻量级的锁。当锁定时间短时性能很好,但是锁定时间长时,性能会很差。在Innodb中,latch可分为mutex(互斥量)和rwlock(读写锁)。目的是用来保证并发线程操作临界资源的正确性,作用于线程,没有死锁检测机制lock:锁。作用对象是事务,用来锁定数据库中的对象。有死锁机制。Innodb的行锁共享锁(S lock),允许事务读取一行数据。S锁可兼容其他S锁排他锁(X lock),允许事务更新或删除一行数据。X锁不兼容其他锁意向锁意原创 2021-05-27 18:09:00 · 307 阅读 · 0 评论 -
Mysql关联更新、删除重复、复制
准备数据-- 1 test_user 表DROP TABLE IF EXISTS `test_user`;CREATE TABLE `test_user` ( `id` int(11) NOT NULL, `name` varchar(255) DEFAULT NULL COMMENT '姓名', `phone` varchar(11) DEFAULT NULL COMMENT '号码', `create_time` datetime(0) NULL DEFAULT CURREN原创 2021-05-26 10:34:58 · 237 阅读 · 0 评论 -
Mysql之Innodb引擎
查询语句分析首先我们可以用EXPLAIN或DESCRIBE(简写:DESC)命令分析一条查询语句的执行信息优化子查询在MySQL中,尽量使用JOIN来代替子查询.因为子查询需要嵌套查询,嵌套查询时会建立一张临时表,临时表的建立和删除都会有较大的系统开销,而连接查询不会创建临时表,因此效率比嵌套子查询高.常用数据库优化方法索引是提高数据库查询速度最重要的方法之一。在表中建立索引,优先考虑where、group by使用到的字段。查询条件中,尽量不使用select *,因为会返回过多原创 2020-10-28 20:53:40 · 432 阅读 · 1 评论 -
Mysql小知识
1 使用B+Tree 而不使用二叉树的原因:二叉树是不平衡树二叉树的深度太深,I/O操作次数过多每次I/O可读取16K的量,但二叉树保存数据太少,没有很好的利用IO的预读能力。2 B+Tree 与 B Tree的区别B+节点关键字搜索采用闭合区间B+非叶节点不保存数据相关信息,只保存关键字和子节点的引用B+关键字对应的数据保存在叶子节点中B+叶子节点是顺序排列的,并且相邻节点具有顺序引用的关系3 innodb引擎innodb采用聚集索引,使用该引擎推荐ID必须有且自增聚集原创 2020-08-22 12:58:36 · 328 阅读 · 0 评论