Difference between revisions of "How to backup settings of users in GUI"

From VoIPmonitor.org
Jump to navigation Jump to search
 
(27 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== Backup ==
+
= Backup =
 +
== Recommended way ==
  
Run in bash following commandline to dump only users settings to /tmp/settings.sql
+
OBSOLETE!! Use [[How_to_backup_settings_of_users_and_data_of_GUI_by_cron]]
 +
 
 +
Use backup/restore functions in the GUI.
 +
 
 +
Run in bash following commands to dump only configuration (users/alerts etc. - does not includes CDRs,registers,messages)
  
  
 
  mydb='voipmonitor'; mysql ${mydb} -Ne "show tables from voipmonitor where \
 
  mydb='voipmonitor'; mysql ${mydb} -Ne "show tables from voipmonitor where \
 +
  \`Tables_in_${mydb}\` LIKE '%\_\_%' OR \
 
   \`Tables_in_${mydb}\` LIKE 'alerts_%' OR \
 
   \`Tables_in_${mydb}\` LIKE 'alerts_%' OR \
 +
  \`Tables_in_${mydb}\` LIKE 'audit_log' OR \
 
   \`Tables_in_${mydb}\` LIKE 'cdr%' AND \
 
   \`Tables_in_${mydb}\` LIKE 'cdr%' AND \
 
   \`Tables_in_${mydb}\` NOT LIKE 'cdr_custom_headers' OR \
 
   \`Tables_in_${mydb}\` NOT LIKE 'cdr_custom_headers' OR \
 
   \`Tables_in_${mydb}\` LIKE '%country%' OR \
 
   \`Tables_in_${mydb}\` LIKE '%country%' OR \
 +
  \`Tables_in_${mydb}\` LIKE 'chart_cache' OR \
 +
  \`Tables_in_${mydb}\` LIKE 'file_cache' OR \
 +
  \`Tables_in_${mydb}\` LIKE 'billing_agregation%' OR \
 +
  \`Tables_in_${mydb}\` LIKE 'daily_reports_sended' OR \
 +
  \`Tables_in_${mydb}\` LIKE 'geoip%' OR \
 +
  \`Tables_in_${mydb}\` LIKE 'livepacket%' OR \
 
   \`Tables_in_${mydb}\` LIKE 'register%' OR \
 
   \`Tables_in_${mydb}\` LIKE 'register%' OR \
 +
  \`Tables_in_${mydb}\` LIKE 'tracker_%' OR \
 
   \`Tables_in_${mydb}\` LIKE 'cache_number_location' OR \
 
   \`Tables_in_${mydb}\` LIKE 'cache_number_location' OR \
 
   \`Tables_in_${mydb}\` LIKE 'contenttype' OR \
 
   \`Tables_in_${mydb}\` LIKE 'contenttype' OR \
 
   \`Tables_in_${mydb}\` LIKE 'files' OR \
 
   \`Tables_in_${mydb}\` LIKE 'files' OR \
   \`Tables_in_${mydb}\` LIKE 'live_packet' OR \
+
   \`Tables_in_${mydb}\` LIKE 'fraud_alert_info' OR \
 +
  \`Tables_in_${mydb}\` LIKE 'hostname_cache' OR \
 
   \`Tables_in_${mydb}\` LIKE 'message' OR \
 
   \`Tables_in_${mydb}\` LIKE 'message' OR \
 
   \`Tables_in_${mydb}\` LIKE 'rtp_stat' OR \
 
   \`Tables_in_${mydb}\` LIKE 'rtp_stat' OR \
 
   \`Tables_in_${mydb}\` LIKE 'system' \
 
   \`Tables_in_${mydb}\` LIKE 'system' \
   "| sed -e "s/^/--ignore-table=${mydb}./" |xargs mysqldump -c --skip-triggers --skip-add-locks --no-create-info ${mydb} > /tmp/settings.sql
+
   "| sed -e "s/^/--ignore-table=${mydb}./" |xargs mysqldump -c --skip-triggers --skip-add-locks --skip-disable-keys --skip-add-drop-table --no-create-info ${mydb} > /tmp/settings.sql
 +
 
 +
Because structure of `users` table varies, dump this table with create statement:
 +
mysqldump voipmonitor users > /tmp/users-create.sql
  
== Restore ==
+
= Restore =
If you wish to restore dumpfile, with with creation of a new db:
+
If you wish to restore dumpfile, start with a new db:
 
  mysqladmin create voipmonitor
 
  mysqladmin create voipmonitor
  
Let your latest sensor, creates new tables needed for voipmonitor service:
+
Let your latest sensor create tables needed for voipmonitor service:
 
  /etc/init.d/voipmonitor restart
 
  /etc/init.d/voipmonitor restart
  
Let your GUI creates tables needed for GUI, Just login to web GUI with your browser (If you are already logged in, logout first and then 'relogin'. (default login is admin / admin)
+
Let your GUI create tables needed for GUI, Just login to web GUI with your browser (If you are already logged in, logout first and then 're-login'. (default login is admin / admin)
 
  http://voipmonitor_IP
 
  http://voipmonitor_IP
  
Remove data from tables that are customizable by users/admins (because these data was dumped).
+
Restore 'users' table structure
  mysql voipmonitor -e "SET FOREIGN_KEY_CHECKS = 0; TRUNCATE table tracker_category; TRUNCATE table tracker_priority; TRUNCATE table tracker_status; SET FOREIGN_KEY_CHECKS = 1;"
+
  mysql voipmonitor < /tmp/users-create.sql
  
Restore settings
+
Restore rest
 
  mysql voipmonitor < /tmp/settings.sql
 
  mysql voipmonitor < /tmp/settings.sql
 
 
 
Not recommended but can be usefull [[other way to backup GUI settings]]
 

Latest revision as of 10:32, 5 November 2021

Backup

Recommended way

OBSOLETE!! Use How_to_backup_settings_of_users_and_data_of_GUI_by_cron

Use backup/restore functions in the GUI.

Run in bash following commands to dump only configuration (users/alerts etc. - does not includes CDRs,registers,messages)


mydb='voipmonitor'; mysql ${mydb} -Ne "show tables from voipmonitor where \
  \`Tables_in_${mydb}\` LIKE '%\_\_%' OR \
  \`Tables_in_${mydb}\` LIKE 'alerts_%' OR \
  \`Tables_in_${mydb}\` LIKE 'audit_log' OR \
  \`Tables_in_${mydb}\` LIKE 'cdr%' AND \
  \`Tables_in_${mydb}\` NOT LIKE 'cdr_custom_headers' OR \
  \`Tables_in_${mydb}\` LIKE '%country%' OR \
  \`Tables_in_${mydb}\` LIKE 'chart_cache' OR \
  \`Tables_in_${mydb}\` LIKE 'file_cache' OR \
  \`Tables_in_${mydb}\` LIKE 'billing_agregation%' OR \
  \`Tables_in_${mydb}\` LIKE 'daily_reports_sended' OR \
  \`Tables_in_${mydb}\` LIKE 'geoip%' OR \
  \`Tables_in_${mydb}\` LIKE 'livepacket%' OR \
  \`Tables_in_${mydb}\` LIKE 'register%' OR \
  \`Tables_in_${mydb}\` LIKE 'tracker_%' OR \
  \`Tables_in_${mydb}\` LIKE 'cache_number_location' OR \
  \`Tables_in_${mydb}\` LIKE 'contenttype' OR \
  \`Tables_in_${mydb}\` LIKE 'files' OR \
  \`Tables_in_${mydb}\` LIKE 'fraud_alert_info' OR \
  \`Tables_in_${mydb}\` LIKE 'hostname_cache' OR \
  \`Tables_in_${mydb}\` LIKE 'message' OR \
  \`Tables_in_${mydb}\` LIKE 'rtp_stat' OR \
  \`Tables_in_${mydb}\` LIKE 'system' \
  "| sed -e "s/^/--ignore-table=${mydb}./" |xargs mysqldump -c --skip-triggers --skip-add-locks --skip-disable-keys --skip-add-drop-table --no-create-info ${mydb} > /tmp/settings.sql

Because structure of `users` table varies, dump this table with create statement:

mysqldump voipmonitor users > /tmp/users-create.sql

Restore

If you wish to restore dumpfile, start with a new db:

mysqladmin create voipmonitor

Let your latest sensor create tables needed for voipmonitor service:

/etc/init.d/voipmonitor restart

Let your GUI create tables needed for GUI, Just login to web GUI with your browser (If you are already logged in, logout first and then 're-login'. (default login is admin / admin)

http://voipmonitor_IP

Restore 'users' table structure

mysql voipmonitor < /tmp/users-create.sql

Restore rest

mysql voipmonitor < /tmp/settings.sql