#!/bin/sh # ianb@erislabs.net 20080212 # empty out a mir db ready to reload a database dump # uploaded_media should be last because other tables depend on it TABLES="active_article_classification active_groups active_multimedia_file active_publishbuffer active_ratings_system active_usertable active_webcast active_webcast_groups active_webcast_groups_appear active_weblink article_type audio breaking comment comment_status comment_x_media content content_x_media content_x_topic features_category features_feature_categories features_features features_imc_site_info features_language features_site_languages features_tmp_features_count filter filter_group images img_color img_format img_layout img_type language media_folder media_type messages other_media rights topic video webdb_users uploaded_media" SEQUENCES="category_id_seq features_id_seq imc_site_info_id_seq groupid webcastid weblinkid publishbufferid article_classificationid webcast_groupsid webcast_groups_appearid usertableid multimedia_fileid ratings_systemid media_folder_id_seq media_type_id_seq language_id_seq comment_status_id_seq webdb_users_id_seq article_type_id_seq topic_id_seq comment_id_seq media_id_seq breaking_id_seq messages_id_seq filter_id_seq filter_group_id_seq" if [ $# -lt 1 ] then echo "usage: $0 [dbname]" 1>&2 echo " deletes mir db ready for a database restore" 1>&2 echo " USE WITH CARE - will destroy your mir database" 1>&2 exit 1 fi ( echo "DROP LANGUAGE plpgsql;" echo "DROP FUNCTION plpgsql_call_handler ( ) ;" for i in $TABLES do echo "DROP TABLE $i;" done for i in $SEQUENCES do echo "DROP SEQUENCE $i;" done ) | sudo -u postgres psql "$1"