shell 腳本獲取MySQL數據庫中全部表記錄總數

近期遇到一個需求,Mysql數據庫中須要統計全部表的記錄數據:
查了下資料能夠調取information_schema數據表中數據獲取全部表記錄數據,可是查詢出來的數據,發現和手動統計的記錄數據不一致,information_schema查詢出來的數據部分不許確【緣由應該是部分表數據沒有自動同步】。折騰了下,因而仍是本身手動寫個腳本,分享下也作下次備用。
程序結構:mysql

#!/bin/bash 
    # Author:Jerry

tb_name=mysql -u帳號 -p密碼 -h192.168.x.x -P端口 -e "select table_name from information_schema.tables where table_schema='數據庫名'"|awk 'NR>1{print $1}'
for name in $tb_name ;
do
tbl_count=mysql -u帳號 -p密碼 -h192.168.x.x -P端口 -e "select count (*) as times from cwsys.$name;"| tail -1
echo "$name=$tbl_count" >>/home/xxx/xxx.log
donesql

shell 腳本獲取MySQL數據庫中全部表記錄總數
執行腳本:
shell 腳本獲取MySQL數據庫中全部表記錄總數
查看生成的統計記錄:
shell 腳本獲取MySQL數據庫中全部表記錄總數
查看統計數據:
shell 腳本獲取MySQL數據庫中全部表記錄總數shell

相關文章
相關標籤/搜索