Hyæna

MySQL: Duplikate in einer Tabelle

Wieder einmal nur eine Notiz für mich, dieses mal geht es um Duplikate in einer MySQL-Tabelle.
Für das Bestimmen der Datensätze, die in zwei Tabellenspalten identisch sind, diese Abfrage verwenden:

SELECT
    spalte1, COUNT(spalte1),
    spalte2,  COUNT(spalte2)
FROM
    tabelle
GROUP BY
    spalte1,
    spalte2
HAVING  
    COUNT(spalte1) > 1
    AND COUNT(spalte2) > 1;

Für das Löschen der Duplikate, so daß nur noch ein Datensatz mit der höchsten ID übrigbleibt, diese Abfrage verwenden:

DELETE t1 FROM tabelle t1
        INNER JOIN
    tabelle t2
WHERE
    t1.id < t2.id
    AND t1.spalte1 = t2.spalte1
    AND t1.spalte2 = t2.spalte2

Terminal-Notizen: Ordnergrößen, Tarball von Server zu Server, Datei über SCP herunterladen

Einige Befehle, die ich immer wieder vergesse… Sind zwar über eine Suche schnell gefunden, hier finde ich sie aber noch schneller!

Anzeige der Ordnergrößen im aktuellen Verzeichnis, sortiert nach Ordnergöße:

$ du -sh * | sort -rh

Übertragen eines Tarballs von Server zu Server:

$ tar cf - . | ssh benutzername@mein-server.de "cd /pfad/zum/ordner; tar xf -"

Das aktuelle Verzeichnis wird in den Tarball gepackt, dann einloggen auf dem entfernten Server, wechseln in das gewünschte Verzeichnis und entpacken des Tarballs.

Datei über SCP herunterladen:

$ scp benutzername@mein-server.de:pfad/zur/datei/datei.zip /pfad/zum/ordner

Git: Export der Veränderungen seit Commit xy

Leider hat man nicht immer die Möglichkeit, Änderungen direkt aus der Versionsverwaltung zu exportieren/deployen. Für solche Fälle benötigt man dann einen Export der Änderungen seit dem letzten Commit, der auf den Server gespielt wurde. Das läßt sich ziemlich einfach mit Git erledigen:

$ git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT 05d402db~1 master | xargs tar -rf output.tar

05d402db ist hier der letzte Commit, der auf den Server gespielt wurde. output.tar ist der Tarball, der dann alle Änderungen enthält.


Koseven veröffentlicht Version 3.3.9!

Yeah, Koseven hat am 19.11.2018 Version 3.3.9 veröffentlicht!

Hier geht es zum Release: Release 3.3.9 koseven/koseven GitHub

Neue Version, neuer Codename: „karlsruhe“ :-)

Wer Interesse hat:


Koseven veröffentlicht Version 3.3.8!

Yeah, Koseven hat am 31.10.2018 Version 3.3.8 veröffentlicht!

Hier geht es zum Release: Release 3.3.8 koseven/koseven GitHub

Neue Version, neuer Codename: „cubelles“ :-)

Wer Interesse hat:


Kurze Durchsage zu diesem Auftritt

Hier noch kurz das Ergebnis von Webbkoll:

Webbkoll-Ergebnis von hyaena.de

So, und damit ist das Thema Datenschutzerklärung auch schon abgehakt…


LaunchServices-Datenbank in Mac OS X neu aufbauen

Irgendwie zernagelt es mir auf meinem MacBook Pro mit Mavericks ab und zu mal die LaunchServices-Datenbank. Die läßt sich mit folgendem Befehl neu aufbauen:

$ /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user ; killall Dock

Dieser Befehl gilt wahrscheinlich nur für Mavericks, auf anderen Versionen kann er auch anders aussehen! Letztendlich ist dieser Beitrag nur als Notiz für mich gedacht, damit ich schnell darauf zugreifen kann.


Apache – https mit einer htaccess-Datei erzwingen

Und mal wieder ein Beitrag, der als Notiz für mich gedacht ist, damit ich schnellen Zugriff darauf habe. Wird Apache als Webserver benutzt und TLS/SSL ist eingerichtet, so läßt sich in einer htaccess-Datei die Benutzung von https erzwingen:

###Forces https
<IfModule mod_rewrite.c>
    RewriteCond %{SERVER_PORT} !^443
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

    ###Set certificate pinning
    ###https://www.owasp.org/index.php/Certificate_and_Public_Key_Pinning
    <IfModule mod_headers.c>
        #Header set Public-Key-Pins "max-age=500; includeSubDomains; pin-sha256=\"\"; report-uri=\"report-uri\"";
    </IfModule>

    ###Sets HSTS (Strict-Transport-Security)
    ###https://www.owasp.org/index.php/HTTP_Strict_Transport_Security
    <IfModule mod_headers.c>
        #Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS
    </IfModule>
</IfModule>

MariaDB auf Debian Stretch installieren

Das gerade veröffentlichte Debian 9 („Stretch“) enthält als Standard-MySQL-Server nicht MySQL, sondern MariaDB in der Version 10.1.

Hier sind nur ein paar kurze Notizen zur Installation für mich.


Koseven veröffentlicht Version 3.3.7!

Yeah, Koseven hat am 04.04.2017 Version 3.3.7 veröffentlicht!

Hier geht es zum Release: Release 3.3.7 koseven/koseven GitHub

Leider konnte ich nicht allzuviel beitragen, aber immerhin kommt der Codename – „lazarus“ – von mir… :-)

Wer Interesse hat: