在 MySQL 中锁定快照以实现可重复读取事务的最快查询

问题描述 投票:0回答:1

根据 MySQL 文档,对于具有

REPEATABLE READ
隔离级别的事务:

同一事务内的一致读取会读取第一次读取建立的快照。

我想尽快为一张表建立快照。我知道

SELECT * FROM <the table> LIMIT 1
有效,但即使表的一行很大,这样的查询也需要很长时间。所以我想知道是否有更快的方法来完成表格的
first read

sql mysql database transactions
1个回答
0
投票

执行

select 1
而不是
select *
,这样您实际上并没有在读取表数据?

如果这仍然太慢,并且您知道最大行数,您可以这样做:

select 1 from yourtable limit offset 100000000

尽管请用您的数据进行尝试;可能不会比以下更快:

select count(*) from yourtable
© www.soinside.com 2019 - 2024. All rights reserved.