(gelöst) Alte Einträge von der Datenbank ebenfalls löschen bzw. Datenbank säubern?
am 28.06.2017 - 14:05 Uhr in
Hallo,
ich habe vor gehabt, gespeicherte Inhalte in der Datenbank (mysql) Verschlüsselt darzustellen, das ist mir Dank einige Module auch super gelungen... doch ein Problem habe ich noch: Die Datenbak zeigt mir noch Texte aus inhalte die ich vorher von Drupal gelöscht habe weil Sie in der Datenbank nicht verschlüsselt dargesgellt worden sind, also dachte ich mir, wenn ich diese von drupal lösche, lsöchen sie sich aus aus der Datenbank, logisch!
Ich habe mir schon gedacht, ich lösche diese "Spuren" direkt aus der Datenbank, befürchte aber, das diese Inhalte irgendwie noch in der DB existieren und habe die Sorge, dass sich die Entity ID verschiebt und so evtl. andere Probleme bekomme die ich nicht mehr gelöst bekomme.. hier ein Beispiel:
mysql> SELECT * FROM field_collection_item__field_passwort;
+-------------------+---------+-----------+-------------+----------+-------+----------------------+
| bundle | deleted | entity_id | revision_id | langcode | delta | field_passwort_value |
+-------------------+---------+-----------+-------------+----------+-------+----------------------+
| field_passwoerter | 0 | 4 | 16 | und | 0 | **********16 |
| field_passwoerter | 0 | 5 | 18 | und | 0 | [ENCRYPTED] |
| field_passwoerter | 0 | 8 | 24 | und | 0 | [ENCRYPTED] |
+-------------------+---------+-----------+-------------+----------+-------+----------------------+
3 rows in set (0.00 sec)
mysql>
das erste, enity id 4 wo als Klartext "**16" steht ist ein alter Inhalt der längst von Drupal 8 gelöscht wurde.. trotzdem ist es in der Datenbank noch drinnen! Es muss doch eine Möglichkeit geben die Datenbank zu bereinigen? Konnte leider nichts finden...
- Anmelden oder Registrieren um Kommentare zu schreiben
Was ist das für eine
am 28.06.2017 - 15:39 Uhr
Was ist das für eine Mistseite wenn man deinen Screen aufrufen will?
PopUps mit Werbung und sonstiges an Nervkram.
Kannst du dir bitte einen anderen Weg überlegen wenn du Hilfe erhalten möchtest um deine Screens darzustellen?
Grüße Jenna
Jenna schrieb Kannst du dir
am 28.06.2017 - 16:09 Uhr
Kannst du dir bitte einen anderen Weg überlegen wenn du Hilfe erhalten möchtest um deine Screens darzustellen?
Grüße Jenna
Bitteschön, 1. Beitrag wurde bearbeitet.
Danke schön, das sieht viel
am 28.06.2017 - 16:37 Uhr
Danke schön, das sieht viel besser aus.
Hier ist ein Link mit einer recht guten Beschreibung um die Cache Tabellen in Drupal 8 zu leeren... nur leeren... " auf keinen Fall löschen".
Backup der DB logischerweise vorher erstellen.
http://www.drupal8.ovh/en/tutoriels/147/cache-clearing-and-rebuilding-me...
Falls das nicht hilft, schreib bitte wieder... möglichst genau beschreiben was du bis dahin gemacht hast, um die Fehlersuche weiter einzugrenzen.
Grüße Jenna
Hi Simon,ich verstehe hie
am 28.06.2017 - 19:25 Uhr
Hi Simon,
ich verstehe hier nicht ganz was du erreichen möchtest.
In einem CMS System wird normalerweise nichts gelöscht und eigentlich schon gar nicht user!
Wenn Du einen user löscht, kann der sich ja mit der gleichen Email Adresse wieder anmelden,
was soll das bringen?
MfG
Robert
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)
Jenna schriebDanke schön,
am 29.06.2017 - 10:23 Uhr
Danke schön, das sieht viel besser aus.
Hier ist ein Link mit einer recht guten Beschreibung um die Cache Tabellen in Drupal 8 zu leeren... nur leeren... " auf keinen Fall löschen".
Backup der DB logischerweise vorher erstellen.
http://www.drupal8.ovh/en/tutoriels/147/cache-clearing-and-rebuilding-me...
Falls das nicht hilft, schreib bitte wieder... möglichst genau beschreiben was du bis dahin gemacht hast, um die Fehlersuche weiter einzugrenzen.
Grüße Jenna
ne, das war leider keien Lösung, das was in der Seite beschrieben worden ist war nichts anderes als das Cache zu löschen, und das mache ich im Normalfall immer über die Drush.
Hi Simon,
ich verstehe hier nicht ganz was du erreichen möchtest.
In einem CMS System wird normalerweise nichts gelöscht und eigentlich schon gar nicht user!
Wenn Du einen user löscht, kann der sich ja mit der gleichen Email Adresse wieder anmelden,
was soll das bringen?
MfG
Robert
Hallo Robert,
User löschen?? wie kommst du darauf? Nein, wie bei meine SQL-Tabelle zu sehen ist geht es um ein "Feld" (Modul: Field collection) für eine Klartext Eingabe über ein Inhaltstyp den ich erstellt habe. Dieser Feld ist nur einer von vielen, das ganze stellt mir eine Passwortverwaltung dar.
Die Daten werden nun Verschlüsselt (AES) in der Datenbank mit [ENCRYPTED] angezeigt und über das User-Login bei Drupal Entschlüsselt dargestellt. - So soll es sein!
Dieser Feld mit der "**16" war ein gesepeichertes Klartext als ich noch keine Verschlüsslung eingebaut hatte, deshalb wurde es "roh" in der Datenbank angezeigt, doch dieser Inhalt wurde über Drupal ganz normal bei Inhalte gelöscht und die Cache wurde öfters über die Drush (beste Methode soweit ich weiß) geleert und trotzdem erscheint es mir noch in der Datenbank. Der Inhaltstyp und die Felder existieren noch natürlich und müssen auch weiter existieren, jetzt werden alle neu erstellte Inhalte in der Datenbank verschlüsselt angezeigt und es passt ja! Nur möchte ich wissen was das alte unverschlüsselte Inhalt, also nicht nur das Feld "Passwort", sondern alle Felder die über das Inhaltstyp erstellt worden sind in der Datenbank noch machen wenn dieser Inhalt über Drupal gelöscht wurde?? Das ist nicht wirklich sauber :/ Fehler/Bug oder gewollt?
Hi,hmm vielleicht verstehe
am 29.06.2017 - 10:55 Uhr
Hi,
hmm vielleicht verstehe ich da etwas falsch.
Also dann kommen die Passwörter gar nicht aus der user Tabelle?
Wie dem auch sei, halte ich es für sehr kritisch das Passwort unverschlüsselt anzuzeigen,
denn dadurch könnten sich u.U. der Salt oder der Key der Verschlüsselung berechnen lassen!
MfG
Robert
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)
Nein, da ist nicht die User
am 29.06.2017 - 12:45 Uhr
Nein, das ist nicht die User Tabelle, ich glaub die User Passwörter sind sowieso von Drupal aus Verschlüsselt, aber das hat nichts mit mein erstellte Passwortverwaltung zu tun.. das mit der Verschlüsslung habe ich auch hinkommen, das funktioniert auch ganz gut.. mein einziges Problem ist: in der Datenbank befinden sich spuren von gelöschten Inhalten die davor nicht Verschlüsselt waren und deshalb von mir in Drupal gelöscht worden sind. Alles andere ist gut, bei neue Inhalte die ich erstelle werden alle Texte in der Datenbank Verschlüsselt angezeigt.. Was in der Datenbank nicht Verschlüsselt angezeigt worden ist, wurde von mir in Drupal gelöscht aber wie gesagt, ist es in der Datenbank trotzdem noch zu sehen!
UPDATE:
Vllt. verwirrt das ganze Verschlüsslungsding... daher lassen wir es sein, es geht wirklich nur darum das ich Texte von gelöschte Inhalte noch in der Datenbank sehen kann was ich auf keinen Fall möchte. Wenn ein Inhalt mit Texte von Drupal gelöscht wurde muss es auch aus der Datenbank raus.
Ah ok,wenn es sich um ein
am 29.06.2017 - 13:05 Uhr
Ah ok,
wenn es sich um ein normales Feld handelt
ist vermutlich die Revision (revision_id) involviert?
PS: oben in deiner Tabelle ist übrigens kein Feld als deleted markiert, auch das nicht das unverschlüsselte!
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)
Die Inhalte, die du schon
am 29.06.2017 - 13:08 Uhr
Die Inhalte, die du schon gelöscht hast, die aber noch in der DB sind, wurden ja vor deinem Passwortmodul erstellt, insofern denke ich auch das man die nachträgliche Verschlüsselung gar nicht ins Thema einbeziehen muß.
Leider kann ich auch nur raten, hast du eventuell Revisionen angelegt/aktiviert, die nicht mit entfernt wurden.
Und vielleicht noch ein unabhängiger Test: was passiert wenn du jetzt eine neue Node (egal welcher Typ, z.B. Artikel) anlegst und diese wieder löscht?
Ist diese Node dann auch aus der DB gelöscht?
Und womit hast den Inhalt erstellt, der noch nicht gelöscht wurde **********16, ist das ein Content Type oder wurde der Inhalt über ein eigenes Modul erzeugt?
Grüße Jenna
Dieses Modul habe ich in
am 29.06.2017 - 13:14 Uhr
Dieses Modul habe ich in Drupal 7 erfolgreich eingesetzt, auch für D8 verfügbar, komplettes Backup sollte aber unbedingt vorher erstellt werden.
https://www.drupal.org/project/node_revision_delete
Grüße Jenna
Wird Wohl noch etwas dauern,
am 29.06.2017 - 15:23 Uhr
Wird Wohl noch etwas dauern, ich gehe schon aggressiv ran..
ist vermutlich die Revision (revision_id) involviert?
in meine Felder habe ich keine Revision_ID involviert, meine Felder sind von Typ alle "Klartext"
In meine Views habe ich bei der Tabelle, wo alle diese Klartext Felder angezeigt werden auch "Inhalt Revision: Geändert (Geändert)" nur damit mir in der views-Tabelle angezeigt wird, wann der Content/Inhalt zuletzt berabeitet wurde. - Auch wenn ich diese von der Views entferne und speichere und das cache durchführe ändert sich bei der DB nichts, also ist es nicht diese Beziehung...
oben in deiner Tabelle ist übrigens kein Feld als deleted markiert, auch das nicht das unverschlüsselte!
verstehe ich auch nicht wieso das so ist.
Die Inhalte, die du schon gelöscht hast, die aber noch in der DB sind, wurden ja vor deinem Passwortmodul erstellt
Ich habe kein Passwortmodul?? Das "Passwort" oder nennen wir es einfach "Text" wird ganz Normal in ein Feld eingegeben, den ich über Field collection als "Klartext" erstellt, also es ist nur ein simples Textfeld in ein von mir erstelltes inhaltstyp/Content type
Die Verschlüsslungs Module sind Encrypt, Key & Real AES und bin mir auch ziemlich sicher, dass diese Module nichts damit zu tun haben bzw. kerine beziehung zu diesen DB-"Fehler" weil:
Und vielleicht noch ein unabhängiger Test: was passiert wenn du jetzt eine neue Node (egal welcher Typ, z.B. Artikel) anlegst und diese wieder löscht?
Ist diese Node dann auch aus der DB gelöscht?
ich habe es jetzt auch mit das Erstellen einer eines Artikel mehrmals versucht, nachdem es gelöscht wurde war es auch gelöscht, ob Verschlüsselt oder nicht Verschlüsselt > die DB hat gut mitgemacht :) diese Beziehung kann es nicht sein, wird Wohl irgendwas mit meine Felder in mein selbst erstelltess Content typ liegen.. ich bin dabei und komme der Sahe langsam näher ran!
Und womit hast den Inhalt erstellt, der noch nicht gelöscht wurde **********16, ist das ein Content Type oder wurde der Inhalt über ein eigenes Modul erzeugt?
Wie oben geschrieben, wurde alles mit Field collection und Inhaltstyp (Drupal 8 Core) erstellt. Der erstelte Inhalt wurde in der seite dann über Views in eine Tabelle angezeigt, und den Inhalt habe ich über Admin menü > Verwalten > inhalt gelöscht.
Dieses Modul habe ich in Drupal 7 erfolgreich eingesetzt, auch für D8 verfügbar, komplettes Backup sollte aber unbedingt vorher erstellt werden.
https://www.drupal.org/project/node_revision_delete
Danke, wäre ne gute Lösung gewesen wenn ich PHP 5.6 installiert hätte, hab noch die 5.5.9 .. falls ich nicht die Ursache von mein problem finde wäre das der nächste Schritt auch wenn nicht wirklich optimal, will umebding wissen wieso die DB so tickt!
Also oben in der Tabelle hat
am 29.06.2017 - 15:29 Uhr
Also oben in der Tabelle hat es revisions ids und als deleted ist keines markiert!
mysql> SELECT * FROM field_collection_item__field_passwort;
+-------------------+---------+-----------+-------------+----------+-------+----------------------+
| bundle | deleted | entity_id | revision_id | langcode | delta | field_passwort_value |
+-------------------+---------+-----------+-------------+----------+-------+----------------------+
| field_passwoerter | 0 | 4 | 16 | und | 0 | **********16 |
| field_passwoerter | 0 | 5 | 18 | und | 0 | [ENCRYPTED] |
| field_passwoerter | 0 | 8 | 24 | und | 0 | [ENCRYPTED] |
+-------------------+---------+-----------+-------------+----------+-------+----------------------+
3 rows in set (0.00 sec)
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)
ich glaub die revison_id
am 29.06.2017 - 16:48 Uhr
ich glaub die revison_id kommt bei drupal 8 jedes mal automatisch mit. hab da aber nichts gemacht.
wie auch immer, ich habe das problem gelöst... und es lag doch an die Verschlüsslungsmodule.. auch wenn es MEINE SCHULD war...
Ich versuche es mal zu erklären:
Wernn man die Felder herstellt, ist es notwendig das man die Verschlüsslung bei Feldeinstellungen aktiviert, sobald es 1x aktiv ist und ein Inhalt damit erstellt wurde darf es nicht mehr deaktiviert werden oder deaktivieren/aktivieren, das Ding Warnt selber:
Warning: changing field encryption settings may cause data corruption!
When changing these settings, existing fields will be (re)encrypted in batch according to the new settings.
Make sure you have a proper backup, and do not perform this action in an environment where the data will be changing during the batch operation, to avoid data loss.
ich bin der lebendige Beispiel das es meine DB durcheinander gebracht hat!
Wie habe ich nun das Problem gelöst?
Ich habe alle Felder und Inhalte die darauf erstellt worden sind gelöscht, dann erstmal die Felder neu erstellt und die Verschlüsslung gleich aktiviert, danach habe ich die Inhalte darauf erstellt und es läuft super! Wenn die Inhalte gelöscht werden, werden diese auch von der DB gelöscht!
Problem gelöst, ich liebe Drupal immer mehr :) insbesondere Drupal 8 ....