Операция не разрешена, когда innodb_forced_recovery> 0 [SqlYog]

Я создал таблицу, использующую SQLyog. Когда я вставляю в него значения, он появляется после сообщения об ошибке:

Operation not allowed when innodb_forced_recovery > 0.

Моя таблица состоит всего из четырех столбцов, включая один первичный ключ. Ниже приведены мои запросы создания и вставки:

CREATE TABLE `news` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `title` varchar(100) NOT NULL,
  `slug` varchar(100) NOT NULL,
  `descr` varchar(100) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1

insert into `test`.`news` (`title`, `slug`, `descr`)
 values ('titleOne', 'slugOne', 'descOne')

Ответ 1

Эта ошибка возникает, когда MySQL находится в режиме только для чтения.

Изменить файл /etc/my.cnf.

И закомментируйте следующую строку

# innodb_force_recovery = 1

По-видимому, этот параметр приводит к тому, что innodb становится доступным только для чтения. Если у вас нет доступа к /etc/my.cnf на общем хостинге, попросите своего хоста исправить его для вас. Когда он комментируется или не существует в /etc/my.cnf, он возвращается к default setting of 0.

Ответ 2

Это происходит и со мной, но я решил изменить SQL Engine во время создания таблицы из InnoDB в MyISAM как в ENGINE = innoDB для ENGINE = MyISAM

Итак, если у вас есть ваша база данных и вы хотите ее загрузить, откройте ее любым редактором и измените движок в конце каждой таблицы от innoDB до MyISAM.

это разрешило проблему.