如何删除匹配模式的postgresql数据库?
发布时间:2020-12-13 16:02:43 所属栏目:百科 来源:网络整理
导读:使用pgAdmin III,我可以在 postgresql服务器上列出所有数据库. 但是使用pgAdmin,我当时只能删除1个数据库.需要花费大量时间来删除,例如,30个数据库,一个接一个…… 那么,您的删除方法是什么,所有名称中包含“june”一词的数据库? 可能我将不得不构建一个Bas
使用pgAdmin III,我可以在
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 或者使用更可靠的for循环(在父上下文中执行的块,因此有必要为其主体执行一些额外的移动): for dbname in $(psql -c "copy (select datname from pg_database where datname like '%june%') to stdout") ; do echo "$dbname" #dropdb -i "$dbname" done 另外选项-X for psql(不要使用?/ .psqlrc文件)可以很好地避免不必要的输出. 对于psql和dropdb实用程序,您可能需要提供连接选项(see documentation) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |