#!/bin/bash # VARIABLES CONFIG_FILE="./app/etc/local.xml" DUMP_FILE="./var/db-sales-users.sql" TABLES="sales_bestsellers_aggregated_daily sales_bestsellers_aggregated_monthly sales_bestsellers_aggregated_yearly sales_billing_agreement sales_billing_agreement_order sales_flat_creditmemo sales_flat_creditmemo_comment sales_flat_creditmemo_grid sales_flat_creditmemo_item sales_flat_invoice sales_flat_invoice_comment sales_flat_invoice_grid sales_flat_invoice_item sales_flat_order sales_flat_order_address sales_flat_order_grid sales_flat_order_item sales_flat_order_payment sales_flat_order_status_history sales_flat_quote sales_flat_quote_address_item sales_flat_quote_item sales_flat_quote_item_option sales_flat_quote_payment sales_flat_quote_shipping_rate sales_flat_shipment sales_flat_shipment_comment sales_flat_shipment_grid sales_flat_shipment_item sales_flat_shipment_track sales_invoiced_aggregated sales_invoiced_aggregated_order sales_order_aggregated_created sales_order_aggregated_updated sales_order_status sales_order_status_label sales_order_status_state sales_order_tax sales_order_tax_item sales_payment_transaction sales_recurring_profile sales_recurring_profile_order sales_refunded_aggregated sales_refunded_aggregated_order sales_shipping_aggregated sales_shipping_aggregated_order customer_address_entity customer_address_entity_datetime customer_address_entity_decimal customer_address_entity_int customer_address_entity_text customer_address_entity_varchar customer_eav_attribute customer_eav_attribute_website customer_entity customer_entity_datetime customer_entity_decimal customer_entity_int customer_entity_text customer_entity_varchar customer_form_attribute customer_group eav_entity_store" # USAGE function usage() { cat <()?<\/$1>" $TMP_FILE | sed "s#<$1><\/$1>##g") if [[ "$2" == "sanitise" ]]; then RETVAL=$(echo "$RETVAL" | sed 's/"/\\\"/g') fi echo -e "$RETVAL" } which mktemp >/dev/null 2>&1 [ $? -eq 0 ] && TMP_FILE=$(mktemp ./var/local.xml.XXXXX) || TMP_FILE="./var/.tmp.local.xml" sed -ne '/default_setup/,/\/default_setup/p' $CONFIG_FILE > $TMP_FILE IGNORE_STRING="" DBHOST=$(getParam "host") DBUSER=$(getParam "username") DBPASS=$(getParam "password" "sanitise" ) DBNAME=$(getParam "dbname") TABLE_PREFIX=$(getParam "table_prefix") [ -f $TMP_FILE ] && rm $TMP_FILE if [[ ! "$OPT_d" == "" ]]; then mysqldump -h $DBHOST -u $DBUSER -p$DBPASS --routines --triggers --single-transaction $DBNAME $TABLES >> $DUMP_FILE message "dumped" elif [[ ! "$OPT_i" == "" ]]; then [ ! -f "$DUMP_FILE" ] && error "SQL file does not exist" question "Are you sure you want to restore $DUMP_FILE to $DBNAME?" if [ $? -eq 0 ]; then mysql -h $DBHOST -u $DBUSER -p$DBPASS $DBNAME <$DUMP_FILE message "MYSQL IMPORT COMPLETE" fi exit 0 fi