mysql
文章平均质量分 76
csdn-延
好记性不如个烂笔头
展开
-
一文搞懂Mysql中的共享锁、排他锁、悲观锁、乐观锁及使用场景
其实mysql中的引擎有很多种类,其中InnoDB和MyISAM引擎最常用在mysql5.5版本前默认使用MyISAM引擎,之后使用InnoDB引擎查看数据库引擎命令如下。转载 2023-08-07 13:57:46 · 1704 阅读 · 1 评论 -
MySQL数据库中的锁有哪些类型
InnoDB行锁是通过给索引上的索引项加锁来实现的,这一点MySQL与Oracle不同,后者是通过在数据块中对相应数据行加锁来实现的。InnoDB这种行锁实现特点意味着:只有通过索引条件检索数据,InnoDB才使用行级锁,否则,InnoDB将使用表锁!如果一个事务对对象加了排他锁,其他事务就不能再给它加任何锁了。锁定粒度大,发生锁冲突的概率最高,并发度最低。MySQL数据库中的锁有共享锁,排他锁,行锁,表级锁,行级锁以及页面锁。根据锁的级别或密度来划分,MySQL有三种锁的级别:页级、表级、行级。转载 2023-08-07 13:37:28 · 178 阅读 · 0 评论 -
数据库中 脏读、幻读、不可重读是什么意思?
幻读(Phantom Read)指在一个事务中,读取到了其他事务插入的符合条件的新数据,或者其他事务已经删除的数据。例如,事务A执行了“SELECT * FROM table WHERE column=1”,然后事务B在这个表中插入了一条符合条件的新数据,那么当事务A再次执行同样的查询时,会返回另两条记录,如同出现幻觉一般,这就是幻读。在多个事务同时操作同一数据时,要么调整事务隔离级别,控制事务对数据的访问,避免出现问题,要么通过其他的方法来避免这些问题的出现,例如行级锁、加表锁等。原创 2023-08-04 00:54:55 · 568 阅读 · 0 评论 -
Doris比MySQL快的原因
在数据存储和数据分析领域,MySQL和Doris是比较流行的数据库管理系统的代表。在如今的大数据时代,数据量和数据分析的速度是很重要的。在数据分析和数据处理中,Doris比MySQL快,这个问题一直是许多人关心的问题。可以看出,Doris具有列式存储、分布式计算、并行多线程等特点。正是这些特点,让Doris在数据分析中表现出更高的性能,相比MySQL更加快速。由于实际使用场景的不同,选择MySQL还是Doris,需要根据个人和业务需求综合考虑。原创 2023-08-03 18:56:23 · 3424 阅读 · 0 评论 -
FLinkCDC读取MySQl时间戳时区相关问题解决汇总
FlinkCDC时间问题timestamp等FLinkCDC读取MySQl中的日期问题关于flink1.11 flink sql使用cdc时区差8小时问题flinksql 中使用 处理时间时, 时区差八个小时的问题 (在 flink 1.13 以后不会在出现时区问题了)flink cdc同步MySQL-->MySQL,时间少了13个小时实测解决 flink cdc mysql 时间字段差8小时/差13小时问题原创 2023-07-30 17:08:42 · 1306 阅读 · 0 评论 -
21条 MySQL 规范、优化最佳实践!
NOT NULL 列更节省空间,NULL 列需要一个额外字节作为判断是否为 NULL 的标志位。NULL 列需要注意空指针问题,NULL 列在计算和比较的时候,需要注意空指针问题。修改或者删除SQL,先写WHERE查一下,确认后再补充 delete 或 update(SQL后悔药)尤其在操作生产的数据时,遇到修改或者删除的 SQL,先加个 where 查询一下,确认 OK 之后,再执行 update 或者 delete 操作。转载 2023-07-26 22:50:04 · 320 阅读 · 0 评论 -
MySQL数据库查询性能优化的4个技巧干货
MySQL性能优化是一个老生常谈的问题,无论是在实际工作中还是面试中,都不可避免遇到相应的场景,下面博主就总结一些能够帮助大家解决这个问题的小技巧。SQL优化之前需要确认哪些SQL需要优化,这时就需要引起SQL性能分析工具,主要优化的是查询语句。转载 2023-07-26 22:26:38 · 570 阅读 · 0 评论 -
mysql中聚集索引、辅助索引、覆盖索引、联合索引怎么用
本文主要介绍"mysql中聚集索引、辅助索引、覆盖索引、联合索引怎么用" 有关的知识,希望能够解决您遇到有关问题,下面我们一起来看看这篇 "mysql中聚集索引、辅助索引、覆盖索引、联合索引怎么用" 文章。转载 2023-07-26 21:48:47 · 467 阅读 · 0 评论 -
Mysql MVCC机制原理详解
MVCC,全称Multi-Version Concurrency Control,即多版本并发控制。MVCC是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问,在编程语言中实现事务内存。我们知道,一般情况下我们使用mysql数据库的时候使用的是Innodb存储引擎,Innodb存储引擎是支持事务的,那么当多线程同时执行事务的时候,可能会出现并发问题。这个时候需要一个能够控制并发的方法,MVCC就起到了这个作用。转载 2023-07-26 21:24:02 · 404 阅读 · 0 评论 -
MySQL高级函数exists;rollup;cube;field等
我们看到在select子句中是使用了unitid这个字段,但实际上在exists中,因为输出的是boolean值,与select子句的字段没有任何关系,因此这里不仅可以使用unitid,也可以使用任何一个字段,甚至是*或者是Null,或者是一个字符串,或者是一个整数,都是可以的,可以自己试一下。在进行order by时,要么是从小到大,要么是从大到小,但有时需求不是这样,比如对于score表中,如果unitID为2的课程是最重要的,我们想要让unitID为2的记录排在最前面,那该怎么办呢?转载 2023-04-24 01:25:43 · 1208 阅读 · 0 评论 -
SQL优化的常见形式
1,对查询进行优化避免全表扫描,首先考虑where和group by上涉及的列进行建立索引2,应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=03,应尽量避免在 where 子句中使用!=或<>操作符,or,否则将...原创 2021-06-05 13:43:22 · 124 阅读 · 0 评论 -
Mysql如何将小时维度的统计数据以2小时、3小时、4小时、6小时进行汇总统计呢?
背景: 公司有订单汇总数据存储的时间维度是到小时的,如果是按小时推送,直接group小时字段即可。现在有需求是要分段汇总统计的。分段的时间间隔可能是1小时、2小时、3小时、4小时、6小时(没有5小时,这个小时没有意义)。 如果是按6小时进行汇总,想得到时间段汇总这样的: 00:00~06:00 、06:00~12:00、12:00~18:00、18:00~00:00 这个需求处理感觉是合理的,但不太简单,如果用程序代码进行分组汇总,作为一个大数据工程师来说...原创 2020-08-30 21:32:40 · 3192 阅读 · 0 评论 -
Mysql锁机制
1. 概述1.1 定义 锁时计算机协调多个进程或线程并发访问某一资源的机制。 在数据库中,除了传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供需要用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。1.2 应用当然这里是举个...原创 2019-04-24 17:36:29 · 122 阅读 · 0 评论 -
MySQL的四种事务隔离级别
本文实验的测试环境:Windows 10+cmd+MySQL5.6.36+InnoDB目录一、事务的基本要素(ACID)二、事务的并发问题三、MySQL事务隔离级别四、用例子说明各个隔离级别的情况 1、读未提交: 2、读已提交 3、可重复读 4、串行化 补充:一、事务的基本要素(ACID) 1、原子性(Atomicit...转载 2019-04-24 11:23:23 · 130 阅读 · 0 评论 -
Mysql远程命令连接
一、MySQL 连接本地数据库,用户名为“root”,密码“123”(注意:“-p”和“123” 之间不能有空格)C:\>mysql -h localhost -u root -p123二、MySQL 连接远程数据库(192.168.0.201),端口“3306”,用户名为“root”,密码“123”C:\>mysql -h 192.168.0.201 -P 3306...原创 2019-02-19 10:59:13 · 11427 阅读 · 0 评论 -
MySQL服务器安装配置-非安装版、windows版
1. 下载MySQLhttp://dev.mysql.com/downloads/mysql/5.6.html#downloads我们可以选择自己所需要的版本、环境、平台: 2. 安装 1)下载完成后,我们开始解压下载的压缩包(请解压在C盘) 2)设置配置文件 my.ini打开解压后的文件夹,我们看到: (my.ini是本人添加进去的)我们新建一个my.ini文件,内容如下就可...原创 2018-03-24 18:56:12 · 1163 阅读 · 0 评论