使用pgAdmin III,我可以列出我的postgresql服務器上的所有數據庫。如何刪除匹配模式的postgresql數據庫?
但是用pgAdmin,我當時只能刪除1個數據庫。刪除數據庫需要很長時間,例如,一個接一個地刪除30個數據庫...
那麼,您將刪除的方法是什麼,例如,名稱中包含單詞「june」的所有數據庫, ?
也許我將不得不建立一個Bash腳本。這沒有問題。但是你會在這個腳本中使用哪個命令?
我搜索了很多小時在網上沒有成功這個問題...
感謝幫助。
使用pgAdmin III,我可以列出我的postgresql服務器上的所有數據庫。如何刪除匹配模式的postgresql數據庫?
但是用pgAdmin,我當時只能刪除1個數據庫。刪除數據庫需要很長時間,例如,一個接一個地刪除30個數據庫...
那麼,您將刪除的方法是什麼,例如,名稱中包含單詞「june」的所有數據庫, ?
也許我將不得不建立一個Bash腳本。這沒有問題。但是你會在這個腳本中使用哪個命令?
我搜索了很多小時在網上沒有成功這個問題...
感謝幫助。
psql -c "copy (select datname from pg_database where datname like '%june%') to stdout" | while read line; do
echo "$line"
#dropdb -i "$line"
done
對於psql
和dropdb
事業,你可能需要提供連接選項(see documentation)
非常感謝Abelisto。
真的很高興能有他的劇本!
這是我們最後的腳本,效果很好。絕對好!經過數月的搜索。
#!/bin/bash
clear
export PGPASSWORD="ssadas"
PATTERN=$1
echo "Le paramètre passé est : $PATTERN"
/usr/bin/psql -U odoo -d postgres -c "copy (select datname from pg_database where datname like '%$PATTERN%') to stdout" | while read line; do
echo "$line"
dropdb -U odoo "$line"
done
echo
echo "Les bases de données ayant $PATTERN dans leur nom on été effacées!"
echo
exit
看起來很有趣。我會盡快嘗試。感謝您的回答。 –
1000謝謝你先生!大!大!大! –