Ich hatte eine Tabelle mit der Engine BLACKHOLE erstellt. Im Grunde genommen fungiert die BLACKHOLE-Speicher-Engine als „Schwarzes Loch“, das Daten akzeptiert, aber wegwirft und nicht speichert. Abfragen geben immer ein leeres Ergebnis zurück.
Ich habe gehört, dass wir die Daten abrufen können, indem wir eine neue Tabelle erstellen, die der alten Tabelle mit der Speicher-Engine wie innodb oder myisam entspricht. aber ich hatte das auch versucht, konnte aber das ergebnis nicht erzielen. Kann mir jemand bei diesem Problem helfen, es zu beheben?
mysql> CREATE TABLE test1(i INT, c CHAR(10)) ENGINE = BLACKHOLE;
Query OK, 0 rows affected (0.08 sec)
mysql> INSERT INTO test1 VALUES(1,'record one'),(2,'record two');
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
mysql> select * from test1;
Empty set (0.00 sec)
mysql> CREATE TABLE test_recovery as select * from test1;
Query OK, 0 rows affected (0.17 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> ALTER TABLE test_recovery ENGINE = innodb;
Query OK, 0 rows affected (0.25 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM test_recovery;
Empty set (0.00 sec)