Updating the database doesn't appear to update the configure.php files. And the Update Cfg option doesn't seem to work either.
So here's my version of the upgrade procedure using the brute force method of:
1) freshly installing the new shop to a temporary blank database--which leaves the configure.php files correctly configured it.
2) attaching the live shop's database and then upgrading it.
It's longer, but it seems to work pretty consistently.
NOTICE:
1. Note settings from payment and shipping modules
2. Remove each module
3. After upgrading, install each module, re-enter settings, test
Getting Started...
Basic tools: FTP program, HTML/PHP-friendly text editor, phpMyAdmin or equivalent, webspace control Panel
Also helpful for upgrade: file-comparison tool like WinMerge, Beyond Compare or ExamDiff (Linux) (There's also BBedit for the Mac.)
1. Preparation
Test the new version's features:
Upload new version Zen Cart to demo folder
Install into separate database, include the demo products
Study the features, changes to template structure, and "changelog"
Find changes between your files and originals of same version, noting add-ons:
Some documentation suggests that template overrides can be applied to the new shop as is; other documentation suggests that some changes to overridden files may be necessary. Unless a problem becomes apparent, it's simpler to assume that overrides can be used in the new shop as is.
Presumably if you know that your site modifications consist entirely of overrides, you might skip much of the comparing of files outlined below and get away with simply dragging the new version files on top of a backup of the live shop files, such that new files overwrite the old leaving the overrides intact. Then just compare the language and css overrides to the corresponding distribution files and make changes as needed.
This might also be a good approach if there are very few modifications apart from overrides; selectively overwriting the files one while testing to see what breaks might lead you to the modified files quicker than comparing every file in the site. Just make sure you keep a backup of the live site files.
Unzip the original zen cart files for the version corresponding to your live shop
Backup your live shop files
Use WinMerge or similar tool to compare the newly unzipped original files with your (backup) live shop files, noting the differences
Make a list of any add-on modules
Differences in language defines simply carry forward by copying and pasting
Differences in code will have to be carried forward
See if you can move any changes to the override structure
2. Execution
Create a parent folder for your new shop.
(Eventually you'll move the new shop to the same path as the current live shop, and update your configuration.php files accordingly. For simplicity, place the new shop's parent folder close to the live shop's parent folder, and give the folder a sufficiently unique name so you can easily search and replace it in the configure.php files.)
Unzip new version Zen Cart to your new shop folder
Apply the changes you noted above
(some overrides may have to be updated)
3. Testing your new shop
Install Zen-Cart to temporary blank database:
Backup your live shop's database to SQL; take note of the database's table prefixes, if any.
Create a temporary blank database and attach a user to it with All Privileges; for simplicity use the same database name, user name and password that you plan for the permanent database.
Upload the files, including zc_install files.
Delete "/includes/configure.php", copy "/includes/dist-configure.php" and rename the copy "/includes/configure.php", and assign 777 permissions to it.
Delete "/admin/includes/configure.php", copy "/admin/includes/dist-configure.php" and rename the copy "/admin/includes/configure.php", and assign 777 permissions to it.
Browse to zc_install; click through to the System Inspection page.
System Inspection: Correct any problems and click Re-Check, if necessary.
Click Install.
Database Setup: Enter the Database info. For Store Identifier (Table-Prefix), enter the live store's table prefix, noted above. Click Save Database Settings.
System Setup: Ensure the paths are correct; select Yes only if you have SSL installed.
Click Save System Settings.
phBB Setup: Enter your preferences and click Save phpBB Settings.
Store Setup: Enter any random data (the live store data will be imported later), click Save Store Settings.
Administrator Account Setup: Enter any random data (passwords must match and email must be valid), click Save Admin Settings.
If the process is successful, visit the store; it is a typical Zen Cart installation with no products, displaying "Warning: Installation directory..."
Upgrade database:
Delete the temporary database created earlier, create a new one using the same name as before, and attach the same user as before with All Privileges.
Import the database SQL backup into the new database.
View "/includes/configure.php" and "/admin/includes/configure.php" and ensure that paths and database info are correct; ensure DB_PREFIX is set to the same value as on the live shop; Set permissions for these files to 777.
View the new shop; the layout should be at least somewhat similar to the live shop; categories and products are there, and it displays "Warning: Installation directory..." and "Your database appears to need patching..."
Browse to zc_install; click through to the System Inspection page; it should display the live shop's older database version, and provide a Database Upgrade option.
System Inspection: Correct any problems and click Re-Check, if necessary.
Click Database Upgrade.
Database Upgrade: ensure that the correct upgrade is checked, enter the shop admin name and password, click Update Database Now.
Visit the new shop; the layout should be at least somewhat similar to the live shop; it will be in maintenance mode with the live shop top categories displayed, and displaying "Warning: Installation directory...".
Test and edit as needed.
Enable any needed payment and shipping modules, re-enter settings noted above, test
Re-install any needed add-on modules, test some more.
4. Go Live
When ready to go live:
Put old shop in mainenance mode, entering your IP to allow for previewing
If old shop database has new data since last backup:
Backup old shop database to SQL.
Create a new database; attach the same user as before with All Privileges.
Import the recent database SQL backup into the new database.
Update "/includes/configure.php" and "/newadminfoldername/includes/configure.php" for the new database name.
Browse to new shop's zc_install; click through to the System Inspection page; it should display the live shop's older database version, and provide a Database Upgrade option.
System Inspection: Correct any problems and click Re-Check, if necessary.
Click Database Upgrade.
Database Upgrade: ensure that the correct upgrade is checked, enter the shop admin name and password, click Update Database Now.
Test the new shop.
In your new shop, remove or rename the zc_install folder, rename your admin folder.
Rename the shop folders--the old shop's foldername going to the new shop.
Update "/includes/configure.php" and "/newadminfoldername/includes/configure.php" to reconcile them with the new shop foldername and the new admin foldername; set their permissions to 444.
Take the new shop out of maintenance mode to go live.