当前位置: 首页 > news >正文

正规不收费的网站西安竞价托管公司

正规不收费的网站,西安竞价托管公司,成都自由行4天最佳路线,网页设计学习心得作者:IT邦德 中国DBA联盟(ACDU)成员,10余年DBA工作经验, Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主,全网粉丝10万 擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复, 安装迁移,性能优化、故障…

作者:IT邦德
中国DBA联盟(ACDU)成员,10余年DBA工作经验,
Oracle、PostgreSQL ACE
CSDN博客专家及B站知名UP主,全网粉丝10万+
擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,
安装迁移,性能优化、故障应急处理
微信:jem_db
QQ交流群:587159446
公众号:IT邦德

文章目录

  • 前言
    • 📣 1.故障现象
    • 📣 2.故障分析
    • 📣 3.处理过程
      • ✨ 3.1 设置恢复模式启动
      • ✨ 3.2 备份全库数据
      • ✨ 3.3 删除mysql数据
      • ✨ 3.4.恢复数据
    • 📣 4.技能拓展
      • ✨ 4.1 忘记root密码的处理
      • ✨ 4.2 运维常用命令
    • 📣 5.总结

前言

本次故障发生在机房掉电,服务器异常关机,影响了监控系统的后台的MariaDB及MySQL无法启动。

📣 1.故障现象

由于异常断电或者系统异常重启时MySQL
没有正常退出导致MySQL无法启动,启动时报错如下:

Version: ‘5.5.64-MariaDB’ socket: 
‘/var/lib/mysql/mysql.sock’ port: 3306 MariaDB Server
InnoDB: Failing assertion: addr.page == FIL_NULL || addr.boffset >= FIL_PAGE_DATA
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to https://jira.mariadb.org/
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.
20240527 10:54:24 [ERROR] mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
To report this bug, see http://kb.askmonty.org/en/reporting-bugs
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed,
something is definitely wrong and this may fail.

📣 2.故障分析

报错中给出了强制恢复数据的方式,
参考MySQL官网链接即可
http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html

通过设置innodb_force_recovery
参数不进行回滚才启动数据库。
因为监控数据,可以允许部分数据丢失,所以此种方式可行
innodb_force_recovery = 1

innodb_force_recovery的6个值含义如下:

1 (SRV_FORCE_IGNORE_CORRUPT)
即使服务器检测到损坏的页仍让它运行。
试图使SELECT* FROM tbl_name跳过损坏的索引记录和页,
这样有助于转储表。

2 (SRV_FORCE_NO_BACKGROUND)
阻止主线程和任何清除线程的运行。
如果崩溃会在清除操作中发生,该恢复值会阻止它。

3 (SRV_FORCE_NO_TRX_UNDO)
不要在崩溃恢复后运行事务回滚。

4 (SRV_FORCE_NO_IBUF_MERGE)
阻止插入缓冲合并操作。如果它们会导致崩溃,
不要做这些。不计算表统计。这个值可以永久损坏数据文件。
使用这个值后,准备号删除并重建所有辅助索引。

5 (SRV_FORCE_NO_UNDO_LOG_SCAN)
在启动数据库时不查看撤消日志:InnoDB将即使未完成的事务也作为已提交。
这个值可以永久损坏数据文件。

6 (SRV_FORCE_NO_LOG_REDO)
不要通过恢复对重做日志进行前滚。这个值可能永久损坏数据文件。
数据库页被留在一个陈旧的状态,
这反过来又可能带给B-trees和其它数据库结构更多的损坏。

📣 3.处理过程

✨ 3.1 设置恢复模式启动

vim /etc/my.cnf
添加配置项:
innodb_force_recovery = 1
innodb_purge_thread=0
注意:其中innodb_force_recovery后面的值设置为1
如果1还是不能启动,就再逐步增加为2/3/4等。
直到能启动mysql为止!!!
本次恢复我设置为3后才重启OK

启动成功后测试数据库连接:
mysql -uroot -proot;

✨ 3.2 备份全库数据

mysqldump -uroot -proot
–all-databases > all_mysql_backup.sql

✨ 3.3 删除mysql数据

删除mysql数据之前务必先stop mysql服务
systemctl stop mariadb
cp -r /var/lib/mysql/ /var/lib/mysql.bak
rm -rf /var/lib/mysql/*
重启mysql服务:
正常模式在启动mysql:
vim /etc/my.cnf
注释配置项:
#innodb_force_recovery = 1
#innodb_purge_thread=0
再重启:
systemctl restart mariadb

✨ 3.4.恢复数据

记住一定要先重置下密码:
mysqladmin -u root password root
使用之间备份的sql文件恢复数据:
mysql -uroot -proot
source /root/all_mysql_backup.sql
查看恢复好的数据,搞定~!

📣 4.技能拓展

✨ 4.1 忘记root密码的处理

systemctl stop mariadb
mysqld_safe --skip-grant-tables &
mysql -u root
FLUSH PRIVILEGES;
SET PASSWORD FOR ‘root’@‘%’ = PASSWORD(‘root’);

✨ 4.2 运维常用命令

查询所有数据的大小:
mysql> select concat(round(sum(data_length/1024/1024),2),‘MB’)
as data from information_schema.tables;

当前数据库实例的所有数据库及其容量大小:
select a.SCHEMA_NAME, a.DEFAULT_CHARACTER_SET_NAME,a.DEFAULT_COLLATION_NAME,
sum(table_rows) as ‘记录数’,
sum(truncate(data_length/1024/1024, 2)) as ‘数据容量(MB)’,
sum(truncate(index_length/1024/1024, 2)) as ‘索引容量(MB)’,
sum(truncate((data_length+index_length)/1024/1024, 2)) as ‘总大小(MB)’,
sum(truncate(max_data_length/1024/1024, 2)) as ‘最大值(MB)’,
sum(truncate(data_free/1024/1024, 2)) as ‘空闲空间(MB)’
from INFORMATION_SCHEMA.SCHEMATA a
left outer join information_schema.tables b
on a.SCHEMA_NAME=b.TABLE_SCHEMA
group by a.SCHEMA_NAME, a.DEFAULT_CHARACTER_SET_NAME,a.DEFAULT_COLLATION_NAME
order by sum(data_length) desc, sum(index_length) desc;

📣 5.总结

如果数据库服务器突然断电,尚未保存到磁盘的数据将会丢失。这可能包括尚未提交的事务、缓存中的数据以及正在进行的写操作。当服务器重新启动时,这些数据将无法恢复,可能导致数据不一致或数据丢失的情况,本次的紧急恢复过程,希望能帮助到大家

http://www.yayakq.cn/news/63915/

相关文章:

  • 金华网站建设方案咨询翠竹林wordpress主题
  • 廊坊建站软件临沂 网站优化
  • 建筑网站知名度深圳 教育集团网站建设
  • 网站建设预期目标WordPress输出当前网址
  • 自适应网站优点缺点网站排名优化的技巧
  • 企业网站用什么技术做怎么制作网页并且发布到网上
  • 视频 收费 网站怎么做北京app网站建设价格
  • 新公司网站建设流程广州 网站建设 020
  • 品牌排行榜哪个网站更权威网站开发完整的解决方案
  • 给百度做网站的公司seo服务公司怎么收费
  • 网站开发费用无形资产北京代理记账公司电话
  • 为什么不能用来名字做网站名小学培训机构
  • wordpress 建站 教程写网页用什么语言
  • 小说网站采集可以做嘛网站制作需求
  • 建设部人才中心网站968深圳网站建设公司
  • 从网站下载壁纸做海报涉及企业宣传册制作
  • wordpress后台登陆太慢常见网站性能优化手段
  • 网站留住访客广州市建设网站
  • 做网站需要用什么技术wordpress主题使用帮助
  • 理财产品网站开发文档wordpress搭建个人店铺
  • html创建站点的步骤企业级网站开发平台
  • 网站搜索优化价格推广公司文案
  • 张家港建设局官方网站3000元网站建设三年
  • 怎么做样网站设计网站价格表
  • 临沧高端网站建设wordpress添加搜索栏
  • 在自己电脑上做网站想学程序员去哪里学
  • 北京网站推广排名服务网上商城网站建设报价
  • 贵州省建设厅官网网站工业和信息化部装备工业发展中心
  • 中小学网站建设探讨深圳住建局最新消息
  • 有没有什么网站专门帮人做问卷flash 做ppt的模板下载网站有哪些