Reputation: 133
I am attempting to insert data onto a table and I get the following error message:
Error Code: 1030. Got error 1 "Operation not permitted" from storage engine MEMORY
I checked and confirmed that all my tables are using the InnoDB engine.
I also tried out this popular solution that seems to have fixed most people's issue with a similar but unidentical error:
InnoDB; Replication: Attempting to reset a replication slave while innodb_force_recovery is greater than 0 would return a cryptic error message: ERROR(1030) HY000: Got error -1 from storage engine. The error message has been changed to: ERROR HY000: Operation not allowed when innodb_force_recovery > 0. Replication options such as relay_log_info_repository=TABLE and master_info_repository=TABLE store information in tables in InnoDB. When innodb_force_recovery is greater than 0, replication tables cannot be updated which may cause replication administration commands to fail. (Bug #17287443, Bug #69907)
from this source
I also confirmed that the disk is not full. The structure of the table and the data is okay since I'm exporting it from a functioning setup that I was running on XAMPP (Windows) that I'm now importing onto a XAMPP setup on macOS.
What could be the cause of the error? Has anyone encountered it before and how did you resolve it?
Upvotes: 0
Views: 3480
Reputation: 133
The problem was that my database contains triggers and I had split the export into two parts; structure and data separately. The structure would be successfully imported but on attempting to import the data, the triggers would execute and collide with incoming insert commands.
I manually created the tables first without any other schema objects (DDL), imported the data then run the script to import the rest of the structure.
A lesson learned here is to simply export the entire database using a stable platform like MySQL Workbench which can run for as long as it needs to complete the export (in the case of large databases) unlike an online tool like PHPMyAdmin.
Upvotes: 0