You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
# -*- ispell-local-dictionary: "english" -*-
#+TITLE: Cyclos
* Upgrade
** Migration of existing database
This is taken into account on first run of the newer version.
** Cleaning an existing database to share a new version of it
The initial dump provided should probably use:
#+begin_src sql delete from account_balances; delete from dirty_account_balances; delete from closed_account_balances;
delete from imported_file; delete from imported_files;
delete from account_balances where account_id in (select id from accounts where user_id in (select id from users where status ='PURGED')); delete from user_status_logs where user_id in (select id from users where status = 'PURGED'); delete from messages_to_users where user_id in (select id from users where status = 'PURGED'); delete from ads where owner_id in (select id from users where status = 'PURGED');
delete from passwords where user_id in (select id from users where status = 'PURGED'); delete from user_group_logs where user_id in (select id from users where status = 'PURGED');
delete from admin_notif_settings_fwd_message_categories where preference_id in ( select id from notification_settings where user_id in ( select id from users where status = 'PURGED') ); delete from admin_notif_settings_user_groups where preference_id in ( select id from notification_settings where user_id in ( select id from users where status = 'PURGED') ); delete from notification_type_settings where settings_id in ( select id from notification_settings where user_id in ( select id from users where status = 'PURGED') ); delete from admin_notif_settings_user_alerts where admin_notification_preference_id in ( select id from notification_settings where user_id in ( select id from users where status = 'PURGED') );
delete from admin_notif_settings_external_payments_expired where preference_id in ( select id from notification_settings where user_id in ( select id from users where status = 'PURGED') );
delete from admin_notif_settings_external_payments_failed where preference_id in ( select id from notification_settings where user_id in ( select id from users where status = 'PURGED') );
delete from admin_notif_settings_payments where preference_id in ( select id from notification_settings where user_id in ( select id from users where status = 'PURGED') ); delete from notification_settings where user_id in (select id from users where status = 'PURGED');
delete from user_activities where user_id in (select id from users where status = 'PURGED'); delete from trusted_devices where user_id in (select id from users where status = 'PURGED');
delete from messages_to_groups where message_id in ( select id from messages where messages.owner_user_id in (select id from users where status = 'PURGED') or messages.sentby_user_id in (select id from users where status = 'PURGED'));
delete from messages where owner_user_id in (select id from users where status = 'PURGED') or sentby_user_id in (select id from users where status = 'PURGED');
delete from notifications where user_id in (select id from users where status = 'PURGED');
delete from failed_action_logs where user_id in (select id from users where status = 'PURGED');
delete from users where status = 'PURGED';
delete from ad_history_logs; delete from notified_ad_interests; delete from alerts; delete from error_logs; delete from entity_property_logs; delete from entity_logs; delete from login_history_logs; delete from messages;
delete from failed_action_logs; #+end_src
This will set back admin password to 1234 as stated in [[https://documentation.cyclos.org/4.14/cyclos-reference/installation-maintenance.html][cyclos maintenance documentation]]
#+begin_src sql UPDATE passwords SET value='$2a$10$yM.uw9jC7C1DrRGUhqUc3eSR6FCJH0.HdDt3CJs8YL56iATHcXH7.' WHERE user_id = (SELECT id FROM users WHERE username='admin') AND status = 'ACTIVE' AND password_type_id in ( SELECT id FROM password_types WHERE input_method = 'TEXT_BOX' AND password_mode = 'MANUAL' );
UPDATE passwords SET value = '$2a$04$rDPKseEiJhYdjx9RogW2tuzNX4TKG1wcE79ooEXiA5.mJF.ooZY/2' WHERE status <> 'OLD' AND password_type_id in ( SELECT id FROM password_types WHERE input_method = 'TEXT_BOX' AND password_mode = 'MANUAL' );
UPDATE users SET email = concat(username, '@test.com') WHERE email IS NOT null; #+end_src
This needs to be deleted also for any dumps.
#+begin_src sql delete from database_lock; #+end_src
In java also:
#+begin_src sh compose --debug stop cyclos compose --debug --no-hooks run --entrypoint bash cyclos #+end_src
then inside the docker:
#+begin_src sh java -cp "WEB-INF/classes:WEB-INF/lib/*:/usr/local/tomcat/lib/*" \ org.cyclos.db.DeleteNetworkData #+end_src
(remove all users and transfer, choice 1, then 'yes')
* Changing Licence information
This command is to be executed from the host, knowing that here =cyclos= stands for the name of the =cyclos= service:
#+begin_src sh compose sql cyclos <<EOF update application set license_key = null, license_data = null, local_license_data = null; EOF #+end_src
Restart cyclos
#+begin_src sh docker restart myc_cyclos_1 #+end_src
Then go to URL =/global/classic= with a browser... follow wizard with your id and password from cyclos licence server.
You have to create a new admin that will need to be removed afterwards. It is a good idea to give him the identifier: =adminTemp=.
At the end of the wizard, you'll have a broken interface. You can point to the root url and then disconnect, and reconnect with the standard admin.
Because the procedure re-setted the =root_url= settings, you need to launch a re-deployment:
#+begin_src sh compose up #+end_src
Then, in the browser, once logged in the standard admin, you can go to Global Administration, settings, then users management, and select =adminTemp= user, and ask to remove it. Purge it completely.
|