#!/bin/sh host="127.0.0.1" port="5432" dbname="hsh02_hsdb" username="hsh02_hsdb_readonly" target="/tmp" if [ ! -z $DEST ]; then target=$DEST fi dump() { sql="copy ($1) to stdout with csv header delimiter ';' quote '\"'" file="${target}/${2}" psql --host ${host} --port ${port} --user ${username} --command "${sql}" ${dbname} >"${file}" } dump "select bp_id, member_id, member_code, member_since, member_until, member_role, author_contract, nondisc_contract, free, exempt_vat, indicator_vat, uid_vat from business_partner order by bp_id" \ "office/business_partners.csv" dump "select contact_id, bp_id, salut, first_name, last_name, title, firma, co, street, zipcode, city, country, phone_private, phone_office, phone_mobile, fax, email, array_to_string(array_agg(role), ',') as roles from contact left join contactrole_ref using(contact_id) group by contact_id order by contact_id" \ "office/contacts.csv" dump "select sepa_mandat_id, bp_id, bank_customer, bank_name, bank_iban, bank_bic, mandat_ref, mandat_signed, mandat_since, mandat_until, mandat_used from sepa_mandat order by sepa_mandat_id" \ "office/sepa_mandates.csv" dump "select member_asset_id, bp_id, date, action, amount, comment from member_asset order by member_asset_id" \ "office/asset_transactions.csv" dump "select member_share_id, bp_id, date, action, quantity, comment from member_share order by member_share_id" \ "office/share_transactions.csv" dump "select inet_addr_id, inet_addr, description from inet_addr order by inet_addr_id" \ "hosting/inet_addr.csv" dump "select hive_id, hive_name, inet_addr_id, description from hive order by hive_id" \ "hosting/hive.csv" dump "select packet_id, basepacket_code, packet_name, bp_id, hive_id, created, cancelled, cur_inet_addr_id, old_inet_addr_id, free from packet left join basepacket using (basepacket_id) order by packet_id" \ "hosting/packet.csv" dump "select packet_component_id, packet_id, quantity, basecomponent_code, created, cancelled from packet_component left join basecomponent using (basecomponent_id) order by packet_component_id" \ "hosting/packet_component.csv" dump "select unixuser_id, name, comment, shell, homedir, locked, packet_id, userid, quota_softlimit, quota_hardlimit, storage_softlimit, storage_hardlimit from unixuser order by unixuser_id" \ "hosting/unixuser.csv" # weil das fehlt, muss group by komplett gesetzt werden: alter table domain add constraint PK_domain primary key (domain_id); dump "select domain_id, domain_name, domain_since, domain_dns_master, domain_owner, valid_subdomain_names, passenger_python, passenger_nodejs, passenger_ruby, fcgi_php_bin, array_to_string(array_agg(domain_option_name), ',') as domainoptions from domain left join domain__domain_option using(domain_id) left join domain_option using (domain_option_id) group by domain.domain_id, domain.domain_name, domain_since, domain_dns_master, domain_owner, valid_subdomain_names, passenger_python, passenger_nodejs, passenger_ruby, fcgi_php_bin order by domain.domain_id" \ "hosting/domain.csv" dump "select emailaddr_id, domain_id, localpart, subdomain, target from emailaddr order by emailaddr_id" \ "hosting/emailaddr.csv" dump "select emailalias_id, pac_id, name, target from emailalias order by emailalias_id" \ "hosting/emailalias.csv" dump "select dbuser_id, engine, packet_id, name from database_user order by dbuser_id" \ "hosting/database_user.csv" dump "select database_id, engine, packet_id, name, owner, encoding from database order by database_id" \ "hosting/database.csv"