Suggestions how update the "live" site from the development one

F.schettino

Italian
On development site I make a lot of modifications: new Lists-Forms-Elements, but also new Elements and modified "Name" (consequently the database is changed) of elements in existing List-Forms.
In the mean time, on the live site people added and modified records.

Which is the best and more secure way to update the live site (without losing user data in live site and new/modified definitions of Lists-Forms-Elements from development site)?
Until now, I replayed on live site the same modifications made on the development, but it is very tedious.

I considered two solutions:
(In any case, put offline the live site)

Solution #1
- Import records in db tables filled by Elements from "live" to development.
(I have to pay attention to modified fields name)
- Substitute tables in db live from development db (modified as described)

Solution #2
- Update definitions of Lists-Forms-Elements (*), from development to "live".
- Use "Update database" in list of Forms.
What happens to new records, existing records?

(*) #__fabrik_elements, #__fabrik_formgroup, #__fabrik_forms, #__fabrik_groups, #__fabrik_lists, #__fabrik_joins, #__fabrik_jsactions, #__fabrik_validations

An other question: what does #__fabrik_form_sessions contains?

Thank you in advance for your suggestions.
 
Back up the live first before doing anything.
In general you would want to copy all #__fabrik__xxxx tables from dev to live.
Then preferably I would use Navicat to compare the two database structures. This will allow you to very easily select which changes need to go from your test site to the live site.
Its not free but its a great database management tool, and avoid errors that can occur if you try to manually update tables on the live server

The #__fabrik_sessions table is to store partially completed forms (for multipage forms which have had the option to store partially completed forms turned on)
 
Hi, Rob.

Thank you for your suggestion about Navicat.

I have noted all changes (I hope :)), so I can repeat them on the live site; but it is very long and tedious.
Certainly I'm not the first to have this need; I hoped that you could tell me a procedure you usually used.
For example, do you think that is better the solution # 1 or # 2?
I think you're suggesting to me the solution # 2; but what happen if I "Update database" in list of Forms? Some field is new, some other is modified.
 
We have developed a number of functions and procedures for MySQL DB to be installed in dev DB.
You run the "diff" scripts/calls in Workbench and gets a number of tabs . Here you can see the difference and put the id's you want to copy to prod DB into :
replace into `dev_db`.xxxxx_fabrik_elements SELECT * from `prod_db`.xxxxx_fabrik_elements where id in (id's goes here as 1,2,3,4,77);
But you have to make sure you have the correct field format for changed fields. The new fields for a table are not created. You have to use fabrik form utility "update database".
 
We are in need of some funding.
More details.

Thank you.

Staff online

Back
Top