Aufgrund eines Alptraums, der irgendwie real wurde, wurde meine MySQL-Installation neu installiert. Ich konnte mysql vor der Neuinstallation nicht starten, daher konnte ich mysqldump nicht für eine ordnungsgemäße Sicherung verwenden. Ich habe jedoch / var / lib / mysql an einen sicheren Ort kopiert. Der Versuch, die Datenbankordner wieder an ihren alten Speicherort zu synchronisieren, funktioniert nicht - nun, es funktioniert irgendwie, aber dann hat WordPress einen Zusammenbruch, selbst wenn die Berechtigungen korrigiert wurden. Wenn ich diese Datenbank manuell erstelle und sie dann erneut synchronisiere, wird MySQL nicht gestartet.
Ist es möglich, diesen Ordner irgendwie wiederherzustellen?
BEARBEITEN: Ich habe es jetzt, damit ich den Ordner in der MySQL-Eingabeaufforderung sehen kann. Ich kann diese Datenbank verwenden, versuche aber SELECT * FROM wp_posts; gibt mir
mysql> SELECT * FROM wp_posts;
ERROR 1146 (42S02): Table 'alfheimwp.wp_posts' doesn't exist
Trotz der Tatsache dass
mysql> SHOW TABLES;
+-------------------------------------------------+
| Tables_in_alfheimwp |
+-------------------------------------------------+
| wp_bp_activity |
| wp_bp_activity_meta |
| wp_bp_friends |
| wp_bp_groups |
| wp_bp_groups_groupmeta |
| wp_bp_groups_members |
| wp_bp_messages_messages |
| wp_bp_messages_meta |
| wp_bp_messages_notices |
| wp_bp_messages_recipients |
| wp_bp_notifications |
| wp_bp_notifications_meta |
| wp_bp_user_blogs |
| wp_bp_user_blogs_blogmeta |
| wp_bp_xprofile_data |
| wp_bp_xprofile_fields |
| wp_bp_xprofile_groups |
| wp_bp_xprofile_meta |
| wp_commentmeta |
| wp_comments |
| wp_links |
| wp_options |
| wp_postmeta |
| wp_posts |
| wp_sg_action |
| wp_sg_config |
| wp_sg_schedule |
| wp_signups |
| wp_term_relationships |
| wp_term_taxonomy |
| wp_termmeta |
| wp_terms |
| wp_ucare_logs |
| wp_usermeta |
| wp_users |
| wp_woocommerce_api_keys |
| wp_woocommerce_attribute_taxonomies |
| wp_woocommerce_downloadable_product_permissions |
| wp_woocommerce_log |
| wp_woocommerce_order_itemmeta |
| wp_woocommerce_order_items |
| wp_woocommerce_payment_tokenmeta |
| wp_woocommerce_payment_tokens |
| wp_woocommerce_sessions |
| wp_woocommerce_shipping_zone_locations |
| wp_woocommerce_shipping_zone_methods |
| wp_woocommerce_shipping_zones |
| wp_woocommerce_tax_rate_locations |
| wp_woocommerce_tax_rates |
| wp_wpsp_agent_settings |
| wp_wpsp_attachments |
| wp_wpsp_canned_reply |
| wp_wpsp_catagories |
| wp_wpsp_custom_fields |
| wp_wpsp_custom_priority |
| wp_wpsp_custom_status |
| wp_wpsp_faq |
| wp_wpsp_faq_catagories |
| wp_wpsp_panel_custom_menu |
| wp_wpsp_ticket |
| wp_wpsp_ticket_thread |
+-------------------------------------------------+
61 rows in set (0.00 sec)
Es gibt also offensichtlich etwas an dieser Datenbank, das MySQL fehlt. Dies ist jedoch genau die gleiche Version von MySQL, die ich zuvor verwendet habe.
EDIT 2: Endlich irgendwo anfangen, aber ich bin tief im Kaninchenbau und brauche hier einen Innodb-Helfer ... jetzt fängt MySQL nicht damit an:
2017-10-13T01:55:16.625761Z 0 [ERROR] [FATAL] InnoDB: Tablespace id is 1121 in the data dictionary but in file ./mysql/help_relation.ibd it is 6!
Der Grund, warum ich nicht aus den Tabellen lesen konnte, war, dass ich die innodb-Dateien nicht im Ordner mail / var / lib / mysql wiederhergestellt habe. Jetzt, da ich es habe, stehen diese Tablespace-IDs nicht mehr in einer Reihe. Ich habe keine Ahnung, wie ich sie bearbeiten soll oder ob das überhaupt der Weg ist, sie zu lösen. Ich wünschte, es gäbe eine automatisierte Möglichkeit, diese zu korrigieren!
innodb_force_recovery=6
/etc/mysql/my.cnf einstellen, um zur MySQL-Eingabeaufforderung zu gelangen.