如何修复MYSQL数据库因断电造成的数据损坏

如何修复MYSQL数据库因断电造成的数据损坏,第1张

修复MYSQL数据因断电造成的数据损坏在使用MySQL数据库的时候,都碰到过因断电造成数据库损坏的情况,大家都知道,断电或非正常关机是导致MySQL数据库出现错误最常见的原因,如何恢复MySQL数据库是大家都非常头痛的问题。目前有方法可以帮助大家恢复损坏的MySQL数据库吗?当用户出现断电造成的MySQL数据库丢失损坏时,如果能进入MySQL软件,但是提示错误信息,用户可以通过“系统维护”—“数据库压缩修复”,压缩下数据库(有些软件在“系统设置”—“系统维护”—“数据库备份恢复”中),这种方法只适合一小部分的数据库故障修复,功能性并不高。现在网络上有两种比较推荐使用的MySQL数据库恢复方法,一种方法使用MySQL(和PHP搭配之最佳组合)的check table和repair table 的sql语句,另一种方法是使用MySQL(和PHP搭配之最佳组合)提供的多个myisamchk, isamchk数据检测恢复工具。在很多用户看来,这两个方法都比较复杂,并不适合大多数的用户使用。另外,这两种方法并不能有效的恢复MySQL数据库,可能还会造成数据库被进一步损坏,造成大家无法挽回的损失。根据以上几个原因,这两种MySQL数据库恢复方法并不建议大家使用。。数据库被损坏分以下几种情况:1、严重损坏2、轻度损坏3、有些表被损坏或有些表的部分记录被损坏如何修复MYSQL数据库因断电造成的数据损坏

楼主:你是想做mysql的主从复制嘛

如果是,我把一些关键点给你说下。

1、主节点需要开启二进制日志文件(bin_log)、需要指明server_id

2、从节点需要开启中继日志(relay_log)、需要开启只读(read_only=ON)、需要指明server_id

3、主从配置文件中都写上

innodb_file_per_table = ON:每张表使用单独的存储空间

skip_name_resolve :禁止解析主机名,centos6不用指明'ON',centos7需要指明

datadir=/path/to/data:指明存储数据路径,默认的是'/var/lib/mysql/'

需要注意的是:

1、主从节点的serber_id一定不能相同,看了楼主的截图,应该是server_id问题

2、mysql存储数据路径的属主、属组一定要是mysql用户,需要权限写入数据

mysql设置UUID为主键需要先将数据类型设置为VARCHAR(36),然后插入数据的时候用UUID函数插入UUID。下面我用win10系统下的CMD命令行具体演示一下:

1、打开CMD,输入mysql -uroot -p命令连接mysql,如下图所示

2、通过create创建表,指定ID为varchar(36),并设置为主键,如下图所示

3、在插入数据的时候,调用uuid()函数往主键字段里插入uuid值,如下图所示

4、最后查询插入的数据就可以看到id主键列存放的是uuid类型了,如下图所示


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8695633.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存