Linux下導出數據庫文件進行統計+去重

本文主要講述了如何在linux中實現數據庫文件統計以及去重,感興趣的朋友可以來學習一下!

1. 把數據庫表導出到文本文件中

mysql -h主機 -P端口 -u用戶 -p密碼 -A 數據庫 -e “select email,domain,time from ent_login_01_000” > ent_login_01_000.txt

總共要統計最近3個月的登陸用戶 , 按月份分表,并且每月有128張表 , 全部導出到文件中 , 總共有80G

?

Linux下導出數據庫文件進行統計+去重

2. grep 查出所有的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” > 2019-02.txt

3.使用awk? sort 和 uniq 只取出前面的用戶 , 并且先去一下重復行

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 只去除連續的重復行 , sort可以把行排成連續的 -T是因為默認占用/tmp的臨時目錄 , 根目錄我的不夠用了,因此改一下臨時目錄

這幾個文件占用了100多G

?想學習更多關于linux教程,請關注PHP中文網的Linux視頻教程

? 版權聲明
THE END
喜歡就支持一下吧
點贊7 分享