Mysql Cluster Ndb Restore Foreign key constraint violated
-
26-09-2020 - |
Question
I am trying to restore mysql cluster backup on slave cluster.
When i run ndb_restore command it gives me following error:
$ /usr/local/mysql/bin/ndb_restore -n 6 -b 15 -r ./6
Opening file './6/BACKUP-15.6.log'
File size 1210464 bytes
execute failed: 255: Foreign key constraint violated: No parent row found
NDBT_ProgramExit: 1 - Failed
How can i skip foreign key errors ?
Solution
With any more complex data it is almost impossible to restore data in MySQL Cluster in one step. Usually one needs two steps:
ndb_restore <other_options> --disable-indexes
ndb_restore <other_options> --rebuild-indexes
First step has to be run on all nodes of the cluster. Second step though - just on one node which will rebuild all the indexes.
For foreign keys you can try to split first step into two:
ndb_restore <other_options> --restore_meta
ndb_restore <other_options> --restore_data --disable-indexes
--restore_meta
has to be run on one node. --restore_data
on all the nodes in cluster.
Licensed under: CC-BY-SA with attribution
Not affiliated with dba.stackexchange