首页>>帮助中心>>香港云服务器MySQL无法启动报错mysql Tablespace 3145

香港云服务器MySQL无法启动报错mysql Tablespace 3145

2024/8/29 89次
香港云服务器解决MySQL无法启动报错mysql Tablespace 3145 was not found at XXX

MySQL无法启动报错:mysql Tablespace 3145 was not found at XXX
根据错误信息可以发现是因为表空间找不到导致mysql启动失败。
解决办法:
在mysql配置文件中/etc/my.cnf添加以下配置:
innodb_force_recovery = 1
innodb_force_recovery参数解释:崩溃恢复模式,通常只有在严重故障排除情况下才会改变。可以的值是从0到6。只有在紧急情况下才将这个变量设置为大于0的值,这样你才能启动InnoDB并转储你的表。作为一种安全措施,当innodb_force_recovery大于0时,InnoDB可以防止插入、更新或删除操作。在5.6.15,innodb_force_recovery设置为4或更大,将InnoDB设置为只读模式。由于relay_log_info_repository=TABLE和master_info_repository=TABLE在InnoDB表中存储信息,这些限制可能导致复制管理命令失败并出现错误。
而后启动mysql,启动后,发现我未执行完的那个库无法删除。
ERROR 3679 (HY000): Schema directory './xxx/' does not exist如果,确实发现该数据已不存在,而且确实要删除该数据库。下面提供一种强制删除的方法。
#删除一个已经确定存在的数据库:mysql> drop database xxx;Query OK, 0 rows affected (0.00 sec)
#删除一个不确定存在的数据库:
#发生错误,不能删除'xxx'数据库,该数据库不存在。
mysql> drop database xxx;ERROR 1008 (HY000): Can't drop database 'xxx'; database doesn't exis
t#产生一个警告说明此数据库不存在
mysql> drop database if exists xxx;Query OK, 0 rows affected, 1 warning (0.00 sec)
#创建一个数据库
mysql> create database xxx; Query OK, 1 row affected (0.00 sec)#if exists 判断数据库是否存在,不存在也不产生错误
mysql> drop database if exists xxx; Query OK, 0 rows affected (0.00 sec)
删除之后再去掉/etc/my.cnf中添加个那个配置再重启mysql即可。

一诺网络香港免备案专区,提供「香港增强云服务器」和「香港特惠云服务器」两种类型的高可用弹性计算服务,搭载新一代英特尔®至强®铂金处理器,接入CN2低延时高速回国带宽线路,网络访问顺滑、流畅。机房网络架构采用了BGP协议的解决方案可提供多线路互联融合网络,使得不同网络运营商线路的用户都能通过最佳路由实现快速访问。香港云服务器低至29元/月,购买链接:https://www.enuoidc.com/vps.html?typeid=2