MySQL : InnoDB_Force_recovery = 1 leads to table in read only

标签 mysql database mariadb database-performance my.cnf

我有一个在 MariaDB 10.1.18 下运行的应用程序,我遇到了数据损坏的问题。 因此,在 my.cnf 中,我更改了参数 innoDB_force_recovery = 1 以忽略它们。 但是,我无法在表中插入。但我认为当 innoDB_force_recovery = 4 时禁止插入。 是否可以在 innoDB_force_recovery = 1 时进行插入? 此致。 克里斯托夫

最佳答案

设置 innodb_force_recovery=1 不会修复数据损坏!忽略损坏以允许您在重建数据库之前备份数据。

Only set this variable to a value greater than 0 in an emergency situation, so that you can start InnoDB and dump your tables. As a safety measure, InnoDB prevents INSERT, UPDATE, or DELETE operations when innodb_force_recovery is greater than 0.

所以,不。当 innodb_force_recovery 处于事件状态时,您无法插入数据。使用 mysqldump 创建所有数据的备份,然后删除 MySQL 数据文件并使用备份恢复它。

关于MySQL : InnoDB_Force_recovery = 1 leads to table in read only,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41691943/

相关文章:

php - 在 InnoDB 引擎的全文搜索中使用连字符?

mysql - 如何从两个表中按列选择行

c# - 删除大量记录需要很长时间

java - 如何获取 JDBC 查询的执行/获取时间?

sql-server - 表 Visual Basic 数据库 (T-SQL) 中的条件 If 语句

mysql - SQL - 如何选择具有特定条件的行?

mysql - 防止同一个人重复申请/个人资料?

javascript - 奇怪的数据库响应

mysql - 如何计算除假期和周末外的两个日期之间的天数?

mysql - MariaDB,如何使用字段名作为表名?