导语:有一位客户由于没有注意磁盘空间的大小,导致磁盘空间的使用率为100%,于是数据库就启动不了了,日志中提示Can’t init tc log。
问题描述
打开网页提示连接数据库失败,在服务器使用df -h命令查看情况磁盘使用率为100%。
客户使用的是XAMPP集成环境搭建的web服务。
解决步骤
删除网站日志文件。
cd /opt/lampp/logs ls rm XXXXXXXXX.log
删除的时候请注意不要删除了有用的文件。删除完日志文件后,磁盘可用空间并没有减少,通过询问,原来客户上传了很多无用的文件,一并删除后,磁盘可用空间增加到46%。
重启mysql服务。
/opt/lampp/lampp startmysql
查看mysql是否已经运行起来。
ps -axu
叶子发现mysql并没有启动。切换到mysql错误目录,查看具体的启动错误。
cd /opt/lampp/var/mysql ls cat izuf78ndt6y7qr3xymz109z.err
可以看到最后的提示为:
2018-01-02 11:43:16 139786760734528 [Note] InnoDB: Using SSE crc32 instructions 2018-01-02 11:43:16 139786760734528 [Note] InnoDB: Initializing buffer pool, size = 16.0M 2018-01-02 11:43:16 139786760734528 [Note] InnoDB: Completed initialization of buffer pool 2018-01-02 11:43:16 139786760734528 [Note] InnoDB: Highest supported file format is Barracuda. 2018-01-02 11:43:16 139786760734528 [Note] InnoDB: 128 rollback segment(s) are active. 2018-01-02 11:43:16 139786760734528 [Note] InnoDB: Waiting for purge to start 2018-01-02 11:43:16 139786760734528 [Note] InnoDB: Percona XtraDB (http://www.percona.com) 5.6.34-79.1 started; log sequence number 1181473902 2018-01-02 11:43:16 139786449975040 [Note] InnoDB: Dumping buffer pool(s) not yet started 2018-01-02 11:43:16 139786760734528 [Note] Plugin 'FEEDBACK' is disabled. 2018-01-02 11:43:16 139786760734528 [Note] Recovering after a crash using tc.log 2018-01-02 11:43:16 139786760734528 [ERROR] Can't init tc log 2018-01-02 11:43:16 139786760734528 [ERROR] Aborting
错误为tc log无法初始化。
这个tc log就在错误日志的目录下,将它删除掉。
rm -f tc.log
然后重启mysql。
/opt/lampp/lampp startmysql
这样mysql就可以了,tc.log文件会自动重新创建,
结束
你学会了吗?
目前在“服务器磁盘空间满之后导致mysql(mariadb)无法启动 Can’t init tc log”上有一条评论