Cara Mengira Baris dalam Semua Jadual MySQL Menggunakan Skrip Bash

DDD
Lepaskan: 2024-11-25 16:00:15
asal
187 orang telah melayarinya

How to Count Rows in All MySQL Tables Using a Bash Script

Apabila menguruskan pangkalan data MySQL, selalunya berguna untuk mendapatkan kiraan baris semua jadual untuk memantau saiz dan pertumbuhan pangkalan data anda. Walaupun MySQL tidak menyediakan arahan terbina dalam untuk mengira baris secara terus merentas semua jadual dalam pangkalan data, anda boleh mencapainya dengan mudah dengan skrip Bash yang mudah.

Dalam artikel ini, kami akan membincangkan cara mencipta dan menjalankan skrip Bash yang menanyakan setiap jadual dalam pangkalan data MySQL dan mengembalikan kiraan baris (COUNT(1)) untuk setiap jadual.

Prasyarat

  • MySQL Server: Anda mesti mempunyai pelayan MySQL yang sedang berjalan dengan akses kepada pangkalan data.
  • Bash: Skrip akan ditulis dalam Bash, jadi pastikan anda menjalankannya pada sistem seperti Unix (Linux/macOS) dengan Bash tersedia.

Panduan Langkah demi Langkah

1. Buat Skrip Bash

Pertama sekali, anda perlu mencipta skrip Bash yang akan menyambung ke pelayan MySQL anda, mendapatkan semula semua jadual dan melaksanakan SELECT COUNT(1) untuk setiap jadual untuk mengira baris. Ini skrip penuh:

#!/bin/bash

# MySQL credentials
USER="your_username"
PASSWORD="your_password"
DATABASE="your_database"

# Get list of all tables in the database
TABLES=$(mysql -u $USER -p$PASSWORD -D $DATABASE -e 'SHOW TABLES;' | tail -n +2)

# Loop through each table and get the count
for TABLE in $TABLES; do
  COUNT=$(mysql -u $USER -p$PASSWORD -D $DATABASE -e "SELECT COUNT(1) FROM $TABLE;" | tail -n 1)
  echo "Table: $TABLE, Count: $COUNT"
done
Salin selepas log masuk

2. Pecahan Skrip

Mari kita pecahkan komponen skrip ini: