某局点使用我司CAS虚拟化环境,使用过程中出现页面无法访问的问题。页面显示“404 Not Found”,mysql数据库无法启动,启动的时候提示“Job failed to start”,如下图一和图二所示:
图一
图二
远程现场环境,通过df -h 查看现场存储占用情况,发现根分区已经占满,达到100%,同时读取syslog的日志,里面也记录/var/log/mysql已满,如下图三所示:
图三
看根分区下有一些不再使用的升级包,删掉多余文件释放根分区空间,重新启动mysql发现还是不能启动,需要按照如下的步骤对数据库进行恢复。
第一步: 查看/etc/mysql目录下的mt.cnf文件,查看mysql数据库的存放位置。
cat /etc/mysql/my.cnf
[mysqld]
datadir = /var/lib/mysql
mysql数据库数据存放位置默认配置是/var/lib/mysql 文件夹,具体路径按照用户现场环境设置而定。
第二步:创建备份目录 mkdir /vms/mysqlbackup。
第三步: 将mysql数据文件cp到备份目录中
cp –r /var/lib/mysql /vms/mysqlbackup
第四步:修改mysql配置文件
vim /etc/mysql/my.cnf在[mysqld]后增加innodb_force_recovery = 4
修改完成后启动service mysql start 。如果执行失败继续修改配置文件vim /etc/mysql/my.cnf 设置 innodb_force_recovery 后面的值1到6 逐个替换 直到service mysql start 成功。(如果mysql 服务仍然启动不成功,请不要继续操作,联系新华三工程师处理。)mysql 服务启动成功则继续执行下一步操作。
第五步:服务启动成功后备份数据库信息
mysqldump -uroot -p1q2w3e --all-databases > /vms/dump.sql
第六步:关闭mysql服务 service mysql stop
第七步:修改mysql配置文件
vim /etc/mysql/my.cnf在[mysqld]后删除或者注释掉innodb_force_recovery行。
第八步:进入mysql 数据文件夹默认/var/lib/mysql删除 除mysql/ 和 performance_schema/ 以外的所有文件和文件夹。
第九步:启动mysql服务 service mysql start
第十步:导入数据 mysql -uroot -p1q2w3e -e 'source /vms/dump.sql',如果中间未报错到这一步数据库的数据基本全部恢复。
第十一步:确定mysql数据库正常启动之后,重启tomcat8和casserver服务 service tomcat8 restart、service casserver restart
第十二步:清空浏览器缓存,重新登录,发现可以正常登陆CAS页面,问题解决。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作