一 问题描述
启动数据库失败,错误日志报错:
[ERROR] Found 1 prepared transactions! It means that mysqld was not shut down properly last time and critical recovery information (last binlog or tc.log file) was manually deleted after a crash. You have to start mysqld with --tc-heuristic-recover switch to commit or rollback pending transactions.
二 出错原因
服务器断电,导致mariadb崩溃
三 解决办法
① 修改配置文件
cd /etc/my.cnf.d
vi server.cnf
在[mysqld]下
添加参数:tc-heuristic-recover=rollback
② 启动数据库
systemctl start mariadb
我启动的时候报了个超时的错误,执行systemctl status mariadb是failed状态,但是ps -ef | grep mysql也能看到mysql进程。
③ 注释掉tc-heuristic-recover=rollback,重启数据库
若无法正常关库,则kill -9将进程杀掉