最新要闻
- “格物致知 叩问苍穹”2023年中国航天踏上新征程
- 世界热头条丨海南房子合适买吗?《滨江商业广场》优势不足全面解读~
- 世界今头条!小米13 Ultra被抢购一空!雷军:备货非常困难
- 全球热点!发改委:下大力气稳定汽车消费 鼓励车企开发乡村“专车”
- 32.88万起售 全新林肯航海家上市:环绕大屏加持如开星际飞船
- 环球实时:暗光长焦加持!OPPO Reno10 Pro+来了:堪称“小Find X6”
- 每日快看:误入“小人国”!华为P60 Pro长焦微距效果惊艳
- 活性水是什么意思?活性水和直饮水的区别是什么?
- 红眼病是怎么引起的?红眼病的症状有哪些?
- 天天观察:香港金管局再承接69.16亿港元沽盘?
- 打不过啊!本赛季老鹰对绿军0胜5负 场均净负13.2分
- 快看点丨极端高温出现 印度一颁奖礼热死11人:每人获赔4.1万
- 热门:开卷!微软拟自研AI芯片“戴安娜”:降低机器学习成本
- 黑入iPhone仅需一条iMessage消息!多起NSO“零点击”攻击曝光
- 米粉首发入手小米13 Ultra:实在太香了 小米11 Pro终于退休了
- 一体成型无拼接:康巴赫整竹双面砧板69元新低(90元券)
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
全球焦点!MySQL事务实现原理
事务是什么?
首先思考一个问题,事务是什么?以下是事务的相关解释MySQL中的事务是一种用于确保数据库操作的完整性和一致性的机制。事务处理具有以下四个基本特性,通常被称为ACID特性:
(资料图片仅供参考)
原子性(Atomicity):原子性是指事务中的所有操作要么全部完成,要么全部不完成。事务中的操作不可分割,如果其中一个操作失败,整个事务都会回滚。这意味着事务的所有操作要么一起提交,要么一起取消。
一致性(Consistency):一致性是指事务执行前后,数据库从一个一致性状态转换到另一个一致性状态。换句话说,事务应确保数据库的完整性约束得到维护。例如,如果有一个完整性约束要求一个账户的余额不能为负数,那么在事务执行之后,这个约束仍然应该得到满足。
隔离性(Isolation):隔离性是指在并发环境中,一个事务的执行不应受到其他事务的干扰。事务在执行过程中所做的修改对其他事务来说是不可见的,直到该事务成功提交。隔离性的实现可以通过多种隔离级别来实现,包括读未提交(Read Uncommitted)、读已提交(Read Committed)、可重复读(Repeatable Read)和串行化(Serializable)。
持久性(Durability):持久性是指事务一旦提交,对数据库所做的修改将会永久保存。即使在系统故障或重启的情况下,已提交的事务对数据库的更改也不会丢失。
总之,MySQL事务的特性(ACID特性)旨在确保数据库操作的安全、可靠和一致。通过使用事务,我们可以保证数据库始终处于一致性状态,避免因并发访问和系统故障导致的数据损坏。
要实现MYSQL的事务,我们先得熟悉以下概念
redo log的实现原理,以及使用场景
MySQL的redo log(重做日志)是一种用于确保事务的持久性和恢复能力的日志记录机制。它是InnoDB存储引擎的一个重要组件。下面我们将详细介绍redo log的底层原理和使用场景。
底层原理:
当一个事务开始执行时,InnoDB会为该事务分配一个事务ID。在事务执行过程中,所有的数据修改操作(例如插入、更新和删除)都会在内存中的缓冲池(buffer pool)进行。同时,所有的数据修改操作也会被记录到redo log buffer(重做日志缓冲区)中。这些记录包含了足够的信息,可以在需要时重新执行(重做)这些操作。当事务提交时,InnoDB会将redo log buffer中的记录写入磁盘上的redo log文件(也称为重做日志文件或重做日志磁盘)中。这个过程叫做flush(刷新)。磁盘上的redo log文件是循环使用的,当一个redo log文件被写满后,InnoDB会从头开始写入下一个redo log文件。
使用场景:
崩溃恢复(Crash Recovery):在数据库系统崩溃时,内存中的缓冲池可能包含未写入磁盘的数据。这时,MySQL可以利用redo log文件重新执行(重做)这些修改操作,确保数据的持久性。这个过程称为崩溃恢复。
缓冲池写入优化:通过使用redo log,InnoDB可以在事务提交时先将日志记录写入磁盘,而不是立即将缓冲池中的数据写入磁盘。这样,InnoDB可以在稍后合适的时间批量写入磁盘,从而提高I/O性能。
备份与恢复:在某些场景下,如基于物理备份的增量备份,可以利用redo log记录在备份时段内的数据变更,从而在恢复时重放这些变更,实现数据的一致性恢复。
总之,MySQL的redo log是InnoDB存储引擎的一个关键组件,它通过记录数据修改操作,确保在系统崩溃时可以恢复数据的一致性,同时还可以优化缓冲池的写入性能。
undo log的实现原理,以及使用场景
MySQL的undo log(回滚日志)是InnoDB存储引擎用于实现多版本并发控制(MVCC)和事务回滚的一种日志记录机制。接下来我们将详细介绍undo log的底层原理和使用场景。
底层原理:
当一个事务开始执行时,InnoDB会为该事务分配一个事务ID。
在事务执行过程中,所有的数据修改操作(例如插入、更新和删除)都会在内存中的缓冲池(buffer pool)进行。同时,对于每个数据修改操作,InnoDB会将修改前的数据版本记录到undo log中。
Undo log以段(segment)的形式存储在InnoDB的系统表空间(system tablespace)中,每个事务都有一个或多个专用的undo log段。
如果事务执行失败,或者需要执行ROLLBACK操作,InnoDB可以利用undo log中的记录来还原数据的原始状态。即执行数据回滚。
当事务提交后,如果没有其他事务需要访问这些旧版本数据,InnoDB会在适当的时候回收和重用这些undo log空间。
使用场景:
事务回滚:在执行事务过程中,如果遇到错误或者用户主动执行ROLLBACK操作,InnoDB可以利用undo log回滚事务中的数据修改操作,还原数据到事务开始之前的状态。
多版本并发控制(MVCC):在InnoDB中,undo log被用于实现MVCC,它允许不同事务访问数据的不同快照版本。当一个事务需要读取数据时,InnoDB可以通过undo log生成一个适当的数据版本,从而确保每个事务看到的数据是一致的。这样可以在不加锁的情况下实现并发事务的隔离性。
快照读(consistent read):当执行一致性读操作时,InnoDB会利用undo log生成数据的某个历史版本,这样就可以在不影响其他事务的情况下获得数据的稳定快照。
总之,MySQL的undo log是InnoDB存储引擎的一个关键组件,它通过记录数据修改前的旧版本,实现了事务回滚和多版本并发控制,提高了数据库的并发性能。
MVCC的实现原理,以及使用场景
MySQL中的MVCC(多版本并发控制)是一种用于实现事务隔离性的机制。MVCC允许多个事务同时访问数据库中的数据,而无需加锁。在InnoDB存储引擎中,MVCC通过使用undo log(回滚日志)实现。下面我们将详细介绍MVCC的底层原理和使用场景。
底层原理:
当一个事务开始时,它会获得一个唯一的事务ID。该ID用于区分不同的事务。
在事务执行过程中,每当对一行数据进行修改(例如插入、更新或删除)时,InnoDB会在undo log中记录该行数据修改前的版本。同时,InnoDB会为每行数据添加两个额外的隐藏字段:DB_TRX_ID和DB_ROLL_PTR。DB_TRX_ID用于记录最后一次修改该行数据的事务ID,DB_ROLL_PTR指向相应的undo log记录。
当一个事务需要读取一行数据时,InnoDB会根据该事务的ID和DB_TRX_ID进行比较。如果该事务的ID大于DB_TRX_ID(即该事务在修改事务之后开始),InnoDB会检查该行数据是否有对应的undo log记录。如果有,则InnoDB会使用undo log中的记录生成一个适当的历史版本,并返回给事务。这样,事务就可以看到一致性的数据快照,而不受其他并发事务的影响。
使用场景:
事务隔离:MVCC允许多个事务同时访问数据库,而无需对数据进行加锁。这样,在高并发场景下,事务之间可以独立运行,提高了数据库的性能。
非锁定读操作:在InnoDB存储引擎中,MVCC允许执行非锁定读操作(如SELECT)。这意味着读操作可以在不加锁的情况下进行,减少了锁争用,提高了性能。
快照读(consistent read):当事务需要执行一致性读操作时,InnoDB会利用MVCC机制生成数据的某个历史版本。这样,事务可以看到一个数据的稳定快照,而不受其他事务的影响。
总之,MySQL的MVCC是一种用于实现事务隔离性的机制,它允许多个事务同时访问数据库中的数据,提高了数据库在高并发场景下的性能。在InnoDB存储引擎中,MVCC通过使用undo log实现,确保事务能够看到一致性的数据快照。
MYSQL相关的锁技术原理,以及使用场景
MySQL中的锁技术主要包括以下几种:
- 全局锁(Global Lock):全局锁会锁定整个数据库,通常用于对整个数据库进行备份或者升级操作。使用
FLUSH TABLES WITH READ LOCK
命令可以实现全局锁。全局锁的使用场景较少,因为它会影响到所有用户的操作。 - 表锁(Table Lock):表锁会锁定整个表,使得其他用户无法对该表进行写操作。表锁的使用场景包括:MyISAM存储引擎的读写操作、ALTER TABLE等DDL操作。表锁的优点是简单易用,但在高并发场景下可能会成为性能瓶颈。
- 行锁(Row Lock):行锁是最细粒度的锁,它只锁定被操作的行。InnoDB存储引擎支持行锁。行锁的使用场景包括:事务中的读写操作。行锁可以有效地减少锁冲突,提高并发性能,但实现起来相对复杂。
- 乐观锁(Optimistic Lock):乐观锁并不是MySQL本身提供的锁机制,而是一种编程思想。乐观锁假设数据在一般情况下不会造成冲突,因此在读取数据时不加锁,只在更新数据时检查是否有冲突。乐观锁适用于读多写少的场景,可以通过版本号或者时间戳实现。
- 悲观锁(Pessimistic Lock):悲观锁与乐观锁相反,它假设数据很容易发生冲突,因此在读取数据时就加锁。悲观锁适用于写多读少的场景。在MySQL中,可以通过
SELECT ... FOR UPDATE
语句实现悲观锁。 - 间隙锁(Gap Lock):间隙锁是InnoDB存储引擎特有的一种锁,它锁定的是一个范围,而不是具体的行。间隙锁主要用于防止幻读(Phantom Read)问题。间隙锁的使用场景包括:事务隔离级别为可重复读(REPEATABLE READ)或串行化(SERIALIZABLE)时的范围查询。
- 临键锁(Next-Key Lock):临键锁是InnoDB存储引擎的另一种锁,它是行锁和间隙锁的结合。临键锁可以锁定一行数据以及该行数据之前的间隙,从而防止幻读问题。临键锁的使用场景与间隙锁类似,主要用于事务隔离级别为可重复读或串行化时的范围查询。
总结:MySQL中的锁技术有多种,它们在不同的使用场景下有各自的优缺点。在实际应用中,需要根据业务需求和性能要求选择合适的锁机制。
分别从事务的几个特性入手,分析事务实现的原理
原子性
MySQL事务的原子性(Atomicity)是指一个事务中的所有操作要么全部执行成功,要么全部不执行。如果事务中的某个操作失败,则整个事务需要回滚到开始状态。在InnoDB存储引擎中,事务原子性主要通过undo log(回滚日志)来实现。实现原理:
- 当一个事务开始时,InnoDB会为该事务分配一个唯一的事务ID。
- 在事务执行过程中,每当对一行数据进行修改(例如插入、更新或删除)时,InnoDB会在undo log中记录该行数据修改前的版本。
- 如果事务执行过程中发生错误,或者用户主动发起回滚操作(ROLLBACK),InnoDB会利用undo log中的记录将事务中已执行的操作逐个回滚,还原数据到事务开始之前的状态。
- 如果事务执行成功并提交(COMMIT),InnoDB会将事务中的修改操作永久保存到数据库,并释放对应的undo log空间。
具体例子: 假设我们有一个银行转账事务,从账户A向账户B转账1000元。这个事务包含两个操作:从账户A扣除1000元,向账户B增加1000元。
- 事务开始:分配一个唯一的事务ID。
- 从账户A扣除1000元:InnoDB会记录账户A修改前的余额到undo log中,并在内存的缓冲池中执行扣款操作。
- 向账户B增加1000元:InnoDB会记录账户B修改前的余额到undo log中,并在内存的缓冲池中执行存款操作。
- 在此过程中,如果发生错误(例如余额不足),InnoDB会利用undo log回滚事务,将账户A和账户B的余额还原到事务开始前的状态。
- 如果操作成功,事务提交:InnoDB会将缓冲池中的修改操作永久保存到数据库,并释放对应的undo log空间。
通过这个例子,我们可以看到MySQL事务原子性的实现原理。事务中的所有操作要么全部成功,要么全部回滚,确保了数据的一致性和完整性。在InnoDB存储引擎中,这主要是通过undo log实现的。
隔离性
MySQL事务的隔离性(Isolation)是指在并发环境中,事务之间的操作相互隔离,一个事务不会看到其他事务未提交的数据。在InnoDB存储引擎中,事务隔离性主要通过多版本并发控制(MVCC)和锁机制来实现。实现原理:
- 多版本并发控制(MVCC):InnoDB通过为每个行记录添加两个额外的隐藏字段(创建时间和过期时间,对应事务的ID)来实现MVCC。通过这两个字段,InnoDB可以判断某个行记录在某个事务中是否可见。MVCC允许不同事务读取同一行数据的不同版本,从而避免了读操作的阻塞。
- 锁机制:InnoDB支持行级锁(row-level locking)和表级锁(table-level locking)。通过锁机制,InnoDB可以防止多个事务同时修改同一行数据。锁类型包括共享锁(S锁,允许多个事务读取同一行数据)和排他锁(X锁,只允许一个事务修改数据)。
在不同的隔离级别下,MySQL使用不同的策略来实现事务隔离性:
- 读未提交(READ UNCOMMITTED):一个事务可以读取到其他事务未提交的数据。这个级别很少使用,因为可能导致脏读(Dirty Read)等问题。
- 读已提交(READ COMMITTED):一个事务只能读取到其他事务已提交的数据。这个级别通过MVCC实现,避免了脏读问题,但仍可能出现不可重复读(Non-repeatable Read)。
- 可重复读(REPEATABLE READ):在同一个事务中,对同一行数据的多次读取结果是一致的。这个级别是InnoDB的默认隔离级别。通过MVCC和锁机制,避免了脏读和不可重复读问题,但仍可能出现幻读(Phantom Read)。
- 串行化(SERIALIZABLE):事务顺序执行,一个事务必须等待其他事务完成才能开始。这个级别通过行级锁实现,避免了脏读、不可重复读和幻读问题,但并发性能较差。
具体例子:假设我们有一个商品库存表,包含商品ID、库存数量等字段。现在有两个并发执行的事务T1和T2,它们分别执行以下操作:
- 事务T1:向商品库存表中插入一条新商品记录(商品ID为1,库存数量为10)。
- 事务T2:查询商品库存表中商品ID为1的记录。
为了保证事务隔离性,我们需要确保T2在查询商品库存表时,不会看到T1未提交的插入操作。以下是实现隔离性的方法:
- 使用MVCC: a. 当事务T1开始时,InnoDB会为其分配一个唯一的事务ID。 b. 当T1插入新商品记录时,InnoDB会在内存中的缓冲池执行插入操作,并将该操作记录到undo log(用于回滚)。 c. 当事务T2开始时,InnoDB同样会为其分配一个唯一的事务ID。 d. 当T2查询商品ID为1的记录时,InnoDB会检查T1的事务ID以及商品库存表中商品ID为1的记录的隐藏版本信息。如果T1尚未提交,那么T2将无法看到商品ID为1的记录。这样就实现了事务隔离性。
- 使用锁机制: a. 当事务T1向商品库存表中插入新商品记录时,InnoDB可能会为该记录加上一个行锁。 b. 在T1提交之前,T2无法访问该记录。这样,在T1完成并释放锁后,T2才能查询商品ID为1的记录。这种情况下,事务隔离性得以实现。
通过这个例子,我们可以看到MySQL事务隔离性的底层实现原理。通过多版本并发控制(MVCC)和锁机制,我们可以确保事务之间的操作相互隔离,保证数据的一致性和完整性。
持久性
MySQL事务的持久性(Durability)是指一旦事务提交成功,对数据的修改将被永久保存到数据库中,即使系统崩溃或发生故障也不会丢失。在InnoDB存储引擎中,事务持久性主要通过redo log(重做日志)来实现。实现原理:
- 当一个事务开始时,InnoDB会为该事务分配一个唯一的事务ID。
- 在事务执行过程中,所有的数据修改操作(例如插入、更新和删除)都会在内存中的缓冲池(buffer pool)进行。同时,所有的数据修改操作也会被记录到redo log buffer(重做日志缓冲区)中。
- 当事务提交时,InnoDB会将redo log buffer中的记录写入磁盘上的redo log文件中。这个过程叫做flush(刷新)。这样就确保了即使系统崩溃,磁盘上的redo log文件仍然包含了事务中所有的修改操作。
- 在系统恢复时,InnoDB会根据redo log文件中的记录重做(redo)事务中的所有修改操作,从而确保数据的持久性。
具体例子:假设我们有一个添加新用户的事务,包括以下操作:向用户表中插入一条新的用户记录,向地址表中插入一条新的地址记录。
- 事务开始:分配一个唯一的事务ID。
- 向用户表插入新记录:InnoDB会在内存的缓冲池中执行插入操作,并将该操作记录到redo log buffer中。
- 向地址表插入新记录:InnoDB会在内存的缓冲池中执行插入操作,并将该操作记录到redo log buffer中。
- 事务提交:InnoDB将redo log buffer中的记录写入磁盘上的redo log文件中。
- 如果此时系统崩溃,数据库在恢复时会根据redo log文件中的记录重做事务中的所有修改操作,从而确保数据的持久性。
通过这个例子,我们可以看到MySQL事务持久性的实现原理。通过将事务中的所有修改操作记录到磁盘上的redo log文件,InnoDB确保了即使在系统崩溃的情况下,事务中的修改操作仍然可以恢复,实现了数据的持久性。
一致性
在MySQL中,事务一致性(Consistency)指事务执行前后数据库都必须保持一致性状态。这意味着事务的执行不能破坏数据库的约束和完整性规则。在InnoDB存储引擎中,事务一致性主要通过ACID属性(原子性、一致性、隔离性和持久性)的实现来保证。实现原理:
- 原子性(Atomicity):事务中的所有操作要么全部执行成功,要么全部不执行。这通过undo log(回滚日志)来实现。如果事务执行失败或需要回滚,InnoDB会利用undo log还原数据到事务开始前的状态。
- 隔离性(Isolation):事务之间的操作相互隔离,一个事务不会看到其他事务未提交的数据。这通过多版本并发控制(MVCC)和锁机制来实现。
- 持久性(Durability):一旦事务提交成功,对数据的修改将被永久保存到数据库中。这通过redo log(重做日志)来实现。
通过上述原理,事务一致性得以实现。当事务开始时,数据库处于一致性状态。事务中的操作会按照原子性、隔离性和持久性的要求执行,确保事务完成后,数据库仍然处于一致性状态。具体例子:假设我们有一个银行转账事务,从账户A向账户B转账1000元。这个事务包含两个操作:从账户A扣除1000元,向账户B增加1000元。要保证事务一致性,我们需要满足以下条件:
- 原子性:转账操作要么全部成功(账户A扣款成功,账户B收款成功),要么全部失败(如账户A余额不足)。如果转账失败,事务需要回滚,将数据还原到事务开始前的状态。
- 隔离性:在转账过程中,其他事务不应该看到中间状态(如仅看到账户A扣款,而未看到账户B收款)。通过MVCC和锁机制,我们可以确保事务之间的操作相互隔离。
- 持久性:一旦转账事务成功提交,账户A和账户B的余额修改应永久保存到数据库中。通过redo log,我们可以确保即使系统崩溃,事务的修改仍然可以恢复。
通过这个例子,我们可以看到MySQL事务一致性的实现原理。通过确保事务的原子性、隔离性和持久性,我们可以确保事务执行前后数据库的一致性得以维护。
关键词:
-
天天看热讯:云时代,MySQL到ClickHouse数据同步产品对比推荐
ClickHouse在执行分析查询时的速度优势很好的弥补了MySQL的不足,但是对于很多开发者和DBA来说,如何将M...
来源: python 多线程详解
天天看热讯:云时代,MySQL到ClickHouse数据同步产品对比推荐
全球焦点!MySQL事务实现原理
“格物致知 叩问苍穹”2023年中国航天踏上新征程
世界热头条丨海南房子合适买吗?《滨江商业广场》优势不足全面解读~
世界今头条!小米13 Ultra被抢购一空!雷军:备货非常困难
全球热点!发改委:下大力气稳定汽车消费 鼓励车企开发乡村“专车”
32.88万起售 全新林肯航海家上市:环绕大屏加持如开星际飞船
环球实时:暗光长焦加持!OPPO Reno10 Pro+来了:堪称“小Find X6”
每日快看:误入“小人国”!华为P60 Pro长焦微距效果惊艳
三星7652机身内存是多少?三星7652参数配置
小米2sc是哪一年上市的?小米2sc参数配置
活性水是什么意思?活性水和直饮水的区别是什么?
红眼病是怎么引起的?红眼病的症状有哪些?
三星笔记本NC10显卡怎么下载?三星笔记本nc10显卡配置
天天观察:香港金管局再承接69.16亿港元沽盘?
打不过啊!本赛季老鹰对绿军0胜5负 场均净负13.2分
国家发展改革委:正在抓紧研究起草关于恢复和扩大消费政策文件
快看点丨极端高温出现 印度一颁奖礼热死11人:每人获赔4.1万
热门:开卷!微软拟自研AI芯片“戴安娜”:降低机器学习成本
黑入iPhone仅需一条iMessage消息!多起NSO“零点击”攻击曝光
米粉首发入手小米13 Ultra:实在太香了 小米11 Pro终于退休了
一体成型无拼接:康巴赫整竹双面砧板69元新低(90元券)
环球热消息:安卓微信暗黑模式怎么设置_设置暗黑模式的方法
环球报道:魏牌全面做强大六/七座市场,“蓝山/高山双旗舰组合”闪耀上海车展
天天热议:软件安全之CRC检测
世界新资讯:六(二)、springMVC数据转换 jacson配置,json中的date由Date格式化输出
[nacos]JAR启动并加载/解析Nacos yml格式的配置文件时,报“java.nio.charset.MalformedInputException:
天天看热讯:山西省政府存量债券柜台市场交易流通业务上线
全国股份转让系统:北京长峰医院因发生重大风险事件,今日起股票停牌
世界快资讯:性能看齐RTX 3060 硬件发烧友打造无风扇显卡
世界热讯:被称为“冰箱杀手”的李斯特菌 到底有多恐怖?
【环球播资讯】小米13 Ultra拆解出炉:后摄几乎占满了主板
全球即时:小米13 Ultra预售秒罄!卢伟冰预言成真:1TB版被抢爆了
79元 小米米家多功能充电台灯开启众筹:一灯多用 秒变手电筒
热头条丨相扑标准动作详解
焦点短讯!4月19日盘前重要公司新闻
天天观速讯丨2023年“泼水节” 西双版纳旅游总收入超21亿元
孔乙己如何再造一个“孔乙己”?
SSD数据不能恢复?或许还有的救
环球视点!最完美的徕卡镜头!小米13 Ultra摄影套装版图赏
新华时评·首季经济形势|巩固企稳回升态势 推动经济运行持续整体好转
观察:实例讲解Playwright(二)
Mysql中的数据类型注意事项
观察:新华时评·首季经济形势|巩固企稳回升态势 推动经济运行持续整体好转
播报:美股异动 | 爱立信(ERIC.US)跌超7% 警告成熟市场5G支出将继续缩减
天天观焦点:哈尔滨还要往北300公里 我国在建最北高铁站取得新进展
五一假期返程火车票今日开抢:千万别忘记
【环球报资讯】239元起!小米发布13大新品 价格信息这里一文看
当前观点:今天小米6发售6周年!雷军推荐“钉子户”升级小米13系列
焦点热讯:关于增加东莞银行股份有限公司为东方人工智能主题混合型证券投资基金销售机构同时开通定投及转换业务的公告
今日热门!读SQL进阶教程笔记12_地址与三值逻辑
环球新消息丨312国道宁镇段快速化改造工程进入基层施工新阶段
世界信息:4月18日基金净值:招商瑞泰1年持有混合A最新净值1.0166,涨0.01%
环球焦点!俄罗斯石油被抢:沙特和阿联酋低价购入 再高价卖给欧洲
松下空调怎么样调睡眠模式 松下空调怎么样
Typora 1.5.12 (windows/MacOs版) 简单高效且实用的Markdown编辑器
环球速递!对JSP(Java Server Pages)的一些理解
关注一季度四川民生数据③丨一季度,四川CPI同比上涨1.2%
一图看懂九号电动远行者F90M:新国标能上牌 90km长续航
全球视点!3299元起 锐龙7000X3D游戏神U战未来:AMD、微软合作优化Win系统
199元!小米游戏手柄发布:支持Steam、三模连接
热门:2023刚过了100多天 从主流到高端手机都如何卷?
环球讯息:手慢无?苹果这些机型或许会在iPhone 15系列推出后停产
最新资讯:不拘一格降人才啥意思_不拘一格降人才
宣传好 贯彻好 实施好——甘肃省电力事体制改革势在必行
世界观察:三星s6818处理器_三星6818
焦点关注:郓城农商银行营业部:开展《反电信网络诈骗法》宣传活动
环球看点!择天记第二季
大专院校包括本科不_大专院校包括本科吗?
【环球新视野】纳税太贵玩家拒领终身XGP 日网假图令晓美焰风评被害
中国铁塔与苏交科战略合作签约仪式举行
北京长峰医院住院部东楼发生火情,情况通报
当前关注:马斯克官宣:将推出AI平台TruthGPT;五粮液成立新能源投资公司?工作人员:正在考察光伏和储能方面丨大公司动态
当前热讯:2023医学考博英语常见的内科词汇:泌尿及男性生殖系统
全球今热点:全面打响夏粮丰产丰收攻坚战
环球即时:04月19日周三机会早知道
世界微头条丨医疗纠纷投诉处理流程
【时快讯】铁塔能源联手品胜电子 推出全球首款电变分离式储能电源
信息:亚马逊加速欧洲扩张卖家只需点两下即可上架全部欧盟国家:亚马逊宣布推出欧洲急速拓展计划(EEA),卖家只需进行两次点击,即可将其业务快速拓展至亚马逊的9大欧
每日速读!Elasticsearch搜索功能的实现(一)--搜索引擎为什么选ES
高起_关于高起简述
最新快讯!饲养员拍打大熊猫被停工 多人求情:网友质疑处罚太重
全球播报:信贷紧缩与衰退预期急剧升温!华尔街最准策略师:极度悲观=风险资产反转信号
【天天热闻】“博客书记”张新实被逮捕,71 岁高龄因贪腐问题被查
当前视讯!02 设置工作环境与环境(一)
环球即时看!不坑盒子(Office,WPS接入人工智能)助你高效办公,掐点准时下班回家。
2023天津春秋喜乐汇相声观演指南
天天即时:环境保护局_关于环境保护局介绍
5999元起 安卓影像之王小米13 Ultra发布:高通发文祝贺
观察:499元 小米米家皮皮灯发布:支持手势操控
腾讯自研芯片“沧海”斩获8大全球第一:远超行业GPU
2600岁“古楠木王”被盗割:11人判刑、修复花费29万元
全球今头条!迷你主机卖到白菜价 零刻12代4核CPU准系统688元
天天微动态丨教你用Python画哆啦A梦、海绵宝宝、皮卡丘、史迪仔!
快资讯:R数据分析:生存数据的预测模型建立方法与评价
天天最新:[快讯]创世达公布2022年年度分红实施方案
环球关注:魔域手游直播(魔域手游蜘蛛刷新点)
淘汰8GB内存 小米13 Ultra售价仅5999元:良心升级不涨价
环球微资讯!小米13 Ultra首发环形冷泵散热:温控甩开一众友商