2016-07-27 24 views
2

pgAdmin IIIでは、postgresqlサーバー上のすべてのデータベースを一覧表示できます。パターンに一致するpostgresqlデータベースを削除するには?

しかし、pgAdminでは、その時点で1つのデータベースしか削除できません。たとえば、30個のデータベースを1つずつ削除するには、多くの時間がかかります...

「june」という名前のデータベースをすべて削除するなど、 ?

おそらく私はBashスクリプトを構築する必要があります。これは問題ありません。しかし、このスクリプトではどのコマンドを使用しますか?私はこの問題のために成功することなく、多くの時間のためにウェブを検索してい

...

おかげで支援します。あなたはおそらく、接続オプション(see documentation)Abelistoへ

答えて

2
psql -c "copy (select datname from pg_database where datname like '%june%') to stdout" | while read line; do 
    echo "$line" 
    #dropdb -i "$line" 
done 

彼のスクリプトが本当に嬉しいです!

ここでは、うまく動作する私たちの最後のスクリプトです。絶対に素晴らしい!何ヶ月もの検索の後。

#!/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 
+0

非常に興味深いですね。私はすぐにそれを試してみます。ご回答有難うございます。 –

+0

1000あなたのおかげです!すばらしいです!すばらしいです!すばらしいです! –

1

ビッグ感謝を提供する必要がpsqldropdbユーティリティの

関連する問題