mysqli::real_connect(): (HY000/2002): No such file or directory
1、错误提示 [InnoDB] Unable to lock…:
[ERROR] [MY-012215] [InnoDB] Cannot open datafile '/www/server/data/ibdata1'
2021-02-10T13:40:27.447313Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock /www/server/data/ibdata1 error: 11
解决方式:
mv ibdata1 ibdata1.bak
cp -a ibdata1.bak ibdata1
service mysqld restart
2、错误提示Database page corruption on disk …:
InnoDB: End of page dump
InnoDB: Page may be an update undo log page
2021-02-10T14:22:14.800611Z 0 [ERROR] [MY-011906] [InnoDB] Database page corruption on disk or a failed file read of page [page id: space=4294967279, page number=611]. You may have to recover from a backup.
解决方式:
1)进入恢复模式
官方说明:https://dev.mysql.com/doc/refman/8.0/en/forcing-innodb-recovery.html
打开my.cnf 配置文件
vi /etc/my.cnf
[mysqld] 下面添加 innodb_force_recovery = 1
[mysqld]
innodb_force_recovery = 1
....
重启服务
service mysqld restart
还是无法启动将上面的1改成2/3/4/5/6 直到能启动为止
测试连接:
mysql -uroot -p123456 # 123456改成你的密码
2)备份所有数据库
quit # 退出mysql命令行模式
备份所有数据库命令:
mysqldump -uroot -p123456 --all-databases > all_data_backup.sql
3)清除mysql数据
停止mysql服务
service mysqld stop
备份现有数据文件,删除数据文件,数据文件位置根据实际情况修改
*不知道位置可以在my.cnf文件中找到datadir后面的就是数据文件的位置
cp -r /www/server/data /www/server/data.bak
rm -rf /www/server/data/*
- 初始化数据目录
mysqld --initialize-insecure --user=mysql
重启服务
service mysqld restart
- 进入正常模式
注释掉恢复模式配置
vi /etc/my.cnf
#innodb_force_recovery = 1
重新启动服务
service mysqld restart
mysqladmin -u root password 123456 //恢复密码
6)恢复数据
mysql -uroot -p123456 -e “source all_data_backup.sql”
————————————————
原文链接:https://blog.csdn.net/lsqtzj/article/details/113786543