
mysql
星之宇
这个作者很懒,什么都没留下…
展开
-
InnoDB怎么解决幻读?
结论首先说结论,在RR的隔离级别下,Innodb使用MVCC和next-key locks解决幻读,MVCC解决的是普通读(快照读)的幻读,next-key locks解决的是当前读情况下的幻读。幻读是什么事务A,先执行:update table set name=“hh” where id>3;结果为:OK row xx 表名成功影响多少行数据事务B,后执行,并且提交:insert into table values(11, uu);commit;事务A,然后再selec原创 2020-10-20 10:08:44 · 511 阅读 · 0 评论 -
面对亿级数据,MySQL硬的起来么???
1亿数据查询速度创建表test1test1表,结构比较简单,2个字段,都有索引。DROP TABLE IF EXISTS test1;CREATE TABLE test1( id int PRIMARY KEY COMMENT '编号' auto_increment, order_num bigint comment '订单号')COMMENT '用户表';/*order_num分别加索引*/create index idx1 on test1(order_num);插入1亿数据原创 2020-09-10 20:10:16 · 470 阅读 · 0 评论 -
MySQL如何最大程度防止人为误操作
MySQL帮助说明[root@xingzhiyu~]# mysql --help|grep dummy -U, --i-am-a-dummy Synonym for option --safe-updates, -U.i-am-a-dummy FALSE在mysql命令加上选项-U后,当发出没有WHERE或LIMIT关键字的UPDATE或DELETE时,MySQL程序就会拒绝执行。指定-U登录测试[root@xingzhiyu~]# mysql -uroot -proot原创 2020-09-09 08:34:12 · 188 阅读 · 0 评论 -
mysql为什么不推荐使用uuid或者雪花id作为主键
一:mysql和程序实例1.1:要说明这个问题,我们首先来建立三张表,分别是user_auto_key, user_uuid, user_random_key, 分别表示自动增长的主键,uuid作为主键,随机key作为主键,其它我们完全保持不变.根据控制变量法,我们只把每个表的主键使用不同的策略生成,而其他的字段完全一样,然后测试一下表的插入速度和查询速度:注:这里的随机key其实是指用雪花算法算出来的前后不连续不重复无规律的id:一串18位长度的long值id自动生成表:用户uuid表随机主原创 2020-09-06 20:26:57 · 318 阅读 · 0 评论 -
删库不跑路,详解MySQL数据恢复
日常工作中,总会有因手抖、写错条件、写错表名、错连生产库造成的误删库表和数据的事情发生。那么,如果连数据都恢复不了,还要什么 DBA。1 前言数据恢复的前提的做好备份,且开启 binlog,格式为 row。如果没有备份文件,那么删掉库表后就真的删掉了,lsof 中还有记录的话,有可能恢复一部分文件。但若刚好数据库没有打开这个表文件,那就只能跑路了。如果没有开启 binlog,那么恢复数据后,从备份时间点开始的数据都没了。如果 binlog 格式不为 row,那么在误操作数据后就没有办法做闪回操作,只能老原创 2020-07-28 18:09:39 · 437 阅读 · 0 评论 -
学习 MySQL 高性能优化原理,这一篇就够了!
说起 MySQL 的查询优化,相信大家收藏了一堆奇技淫巧:不能使用 SELECT *、不使用 NULL 字段、合理创建索引、为字段选择合适的数据类型…… 你是否真的理解这些优化技巧?是否理解其背后的工作原理?在实际场景下性能真有提升吗?我想未必。因而理解这些优化建议背后的原理就尤为重要,希望本文能让你重新审视这些优化建议,并在实际业务场景下合理的运用。MySQL 逻辑架构如果能在头脑中构建一幅 MySQL 各组件之间如何协同工作的架构图,有助于深入理解 MySQL 服务器。下图展示了 MySQL 的逻原创 2020-07-26 17:13:43 · 207 阅读 · 0 评论 -
MySql变量说明
MySql变量说明#变量/*系统变量:全局变量会话变量自定义变量:用户变量局部变量/#一、系统变量/说明:变量由系统定义,不是用户定义,属于服务器层面注意:全局变量需要添加global关键字,会话变量需要添加session关键字,如果不写,默认会话级别使用步骤:1、查看所有系统变量show global|【session】variables;2、查看满足条件的部分系统变量show global|【session】 variables like ‘%char%’;3、查看原创 2020-07-24 23:07:46 · 183 阅读 · 0 评论 -
MySQL 宣布停止使用 master、slave!
MySQL 宣布停止使用 master、slave!MySQL 数据库的开发人员宣布,该团队将停止使用并替换掉数据库源代码和文档中的 master、slave、blacklist(黑名单)和 whitelist(白名单)等术语。在官方发布的博客文章中,MySQL 团队表示,其将用新的术语分别替换当前的术语,分别对应为 source、replica、blocklist 和 allowlist。master 和 slave 术语曾考虑过的一个替代方案是 primary 和 secondary,但最终原创 2020-07-24 22:51:08 · 505 阅读 · 1 评论