在MySQL提交事务之前,它将首先编写重做日志,然后提交事务,即预先写入日志。
start transaction;
update users set uuid = UUID() from user where id = 1
update users set uuid = UUID() from user where id = 2
update users set uuid = UUID() from user where id = 3
...
...
update users set uuid = UUID() from user where id = 1,000,000
// not y
我有一个运行MySQL5.5的多AZ AWS RDS实例
我已经注意到,尽管DB连接很低(有时甚至为零),但我的写入操作/秒仍在相当快地增长--请参阅图表中的Avg growing /秒在过去12个月和最后2周中的使用情况,以及Avg DB连接在过去2周中的情况:
📷
📷
📷
我知道总体上写操作系统/秒的水平很低,但是我预计在接下来的几个月里会有更多的文件(比如100倍),并且希望确保我能解决所有的问题。
我在试着弄清楚是什么导致了这些写操作。我尝试连接到RDS实例并执行:
show full process list
这表明:
+--------+----------+-----------
当我尝试用以下命令删除索引时:
DROP INDEX [ClusteredColumnStoreIndex-20180619-104559] ON [dbo].[Transactions]
我知道这个错误:
Msg 9002,17级,状态4,第4行
由于“ACTIVE_ transaction”,数据库“Metrics”的事务日志已满。
此时,数据库所在的磁盘也没有空间。
有人能帮我删除这个索引吗?
我现在有情况。
在简单恢复模型中有一个数据库。
注意:
压缩没有启用,很快就会启用。2. Server 2012 SP3
BackupSize: 8GB (Usually)<br/>
Last Saturday BackupSize: 73GB (yes, 73 !!)
这是因为一个应用程序使2个事务处于打开状态。
现在日志文件是154 is。
Transaction: So far it inserted 90M records to a not so large table)
问题:
在完全备份中,如果存在打开的事务,记录了多少日志信息?
还原完整备份时,它是否通过打开