在數據庫管理中,我們時常需要批量刪除多個數據庫,手動一一刪除太過繁瑣,這時可以借助mysql腳本來快速完成。
下面給出一個示例腳本:
#!/bin/bash USER=root PASSWORD=123456 mysql -u$USER -p$PASSWORD -e "SHOW DATABASES LIKE 'test%'" | grep -v Database | grep -v information_schema | grep -v performance_schema | grep -v mysql | awk '{print "DROP DATABASE " $1 ";"}' | mysql -u$USER -p$PASSWORD
該腳本將刪除所有以test開頭的數據庫,不包括系統自帶的幾個數據庫。
解析:
mysql -u$USER -p$PASSWORD -e "SHOW DATABASES LIKE 'test%'"
使用mysql命令,連接到數據庫,并且執行SHOW DATABASES LIKE 'test%'語句,該語句查詢所有以test開頭的數據庫,返回結果如下:
+--------------------+ | Database (test%) | +--------------------+ | test1 | | test2 | +--------------------+
然后使用grep命令過濾掉不需要刪除的數據庫,即information_schema、performance_schema、mysql庫。
grep -v Database | grep -v information_schema | grep -v performance_schema | grep -v mysql
結果變為:
test1 test2
最后使用awk命令生成DROP DATABASE語句,再通過管道符將語句傳給mysql命令執行刪除操作。
awk '{print "DROP DATABASE " $1 ";"}' | mysql -u$USER -p$PASSWORD
執行完腳本后,所有符合條件的數據庫都將被成功刪除。
總的來說,使用mysql腳本批量刪除數據庫可以大大提高工作效率,減少手動操作的重復勞動。
上一篇對css中的選擇器理解正
下一篇導入css和鏈接css