使用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谢谢你先生!大!大!大! –