mysql 表损坏修复

 select * from information_schema.INNODB_TRX

如果数据库表不存在,提醒表已经存在可以进入mysql bin 目录执行

mysqladmin -uroot -pskyland -P3307 drop trafficflow143

表损坏可以先创建临时表

1. 先把 mysql  的my.init 文件  的  #innodb_force_recovery=4  修改为指定值;

2. 进入bin 目录执行  

mysqlcheck -u root -pskyland -P3307 -c -B     A库,B库

查看表损坏情况

 

create table a;

格式为 ENGINE=MYISAM 

 

insert into a select * from b;

drop table b;

 

再将配置 innodb_force_recovery=4注释掉

 

rename table `trafficflow143`.trafficflows to `trafficflow143`.trafficflow;
alter table `trafficflow143`.trafficflow engine = innodb;

 

 

2.4 进行全库导出

1
shell> mysqldump -uroot -pmysql --master-data=2  -E -R --all-databases > full.sql

2.5 新环境同版本初始化环境

1
shell> /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/var/lib/mysql --user=mysql

注:basedir/datadir根据实际情况修改

2.6 新环境导入数据

1
shell> mysql -uroot -p < full.sql
posted @   不再犯错  阅读(388)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示