MySQL tc.log 文件

标签 mysql mariadb

很多时候,如果 mysql/mariadb 没有启动,因为像“无法初始化 tc.log”这样的错误,很多人建议删除这个文件。我想知道 mysql 在文件中存储了哪些信息。这是一个二进制文件,我找不到任何相关信息。很高兴知道,因为在没有任何线索的情况下删除文件似乎很危险。

提前致谢。

最佳答案

最近 MariaDB 正在处理 clarify tc.log documentation 的问题.

tc.log 是分布式事务 (XA) 日志协调器,由全新安装的 MariaDB 创建,而不是在 Oracle MySQL 中创建。

服务器 --log-tc 选项文档:MariaDB , Oracle MySQL .

所以我认为如果您的应用程序没有使用 distributed transactions,该文件就没有用了。并且您的实例中只有一个启用 XA 的存储引擎,通常是 InnoDB:

select Engine, XA from information_schema.engines where XA='YES'\G
*************************** 1. row ***************************
Engine: InnoDB
    XA: YES
1 row in set (0.00 sec)

目前 XA 由 InnoDB、TokuDB 和 SPIDER 存储引擎支持,因此如果您想要在同一实例中覆盖这些引擎的分布式事务,您需要 tc.log

关于MySQL tc.log 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50158273/

相关文章:

mysql - NestJS + MySQL : how to connect to multiple databases without setting entities

mysql - 为 doctrine 和 elasticsearch 设置环境变量

mysql - 获取时间范围 SQL 查询之外的最后一行

MySQL用双左连接更新行,限制第一个匹配

MYSQL:错误 1064(42000) MariaDB 服务器在 'NOT NULL' 附近使用正确的语法

mysql - 使用 MySqlSessionStateStore 时, key 'vtfszyfxemkrwu52hjyugphb-1' 的重复条目 'PRIMARY'

php - array_keys 在 laravel 中不起作用

mariadb - 更改 MariaDB 中的列名称

mysql - MariaDB服务持续启动失败

mysql - AWS 授予 DBA MySQL