In diesem Artikel geht es hauptsächlich um die Implementierung von Datenbankdateistatistiken und Deduplizierung unter Linux. Interessierte Freunde können es lernen!
1. Exportieren Sie die Datenbanktabelle in eine Textdatei
mysql -h host -P port -u user -p password -A Database -e "select email,domain,time from ent_login_01_000" > ent_login_01_000.txt
Es werden insgesamt in den letzten 3 Monaten angemeldete Benutzer gezählt, aufgeteilt in Tabellen pro Monat, und es gibt 128 Tabellen pro Monat, die alle in Dateien exportiert werden, insgesamt 80G
2. grep findet alle 2018-12 2019-01 2019-02
find ./ -type f -name "ent_login_ *" | xargs cat |grep "2018-12" > 2018-12.txt
find ./ -type f -name "ent_login_*" |xargs cat |grep "2019-01" > 2019-01. txt
find ./ -type f -name "ent_login_*" |xargs cat |grep "2019-02" > 3. Verwenden Sie awk sort und uniq, um nur zu entfernen vorheriger Benutzer, und gehen Sie zuerst zu den doppelten Zeilen
cat 2019-02.txt|awk -F " " '{print $1"@"$2}'|sort -T /mnt/public/phpdev/187_test /tmp/|uniq > 2019-02-awk-sort-uniq.txt
cat 2019-01.txt|awk -F " " '{print $1"@"$2}'|sort -T /mnt/public/ phpdev/187_test/tmp/|uniq > 2019-01-awk-sort-uniq.txt
cat 2018-12.txt|awk -F " " '{print $1"@ "$2}'| sort -T /mnt/public/phpdev/187_test/tmp/|uniq > 2018-12-awk-sort-uniq.txt
uniq entfernt nur aufeinanderfolgende doppelte Zeilen, Sortieren kann angeordnet werden Die Zeilen werden nacheinander verschoben. Das liegt daran, dass das temporäre Verzeichnis von /tmp standardmäßig belegt ist. Das Stammverzeichnis reicht für mich nicht aus, daher habe ich das temporäre Verzeichnis geändert
Diese Dateien belegen mehr als 100 G
Ich möchte mehr erfahren. Weitere Linux-Tutorials finden Sie im
Linux-Video-Tutorialauf der chinesischen PHP-Website!
Das obige ist der detaillierte Inhalt vonExportieren Sie Datenbankdateien unter Linux für Statistiken und Deduplizierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!