[REV] How to "upgrade" to XAMPP 1.8.0 or 1.8.1

Problems with the Windows version of XAMPP, questions, comments, and anything related.

[REV] How to "upgrade" to XAMPP 1.8.0 or 1.8.1

Postby JonB » 17. July 2012 14:37

Note there is NO Upgrade for 1.8.0 or 1.8.1 - reason - things (features, settings, configurations) are too different when you hit a major release on Apache and/or PHP. XAMPP 1.8.0/1 has Apache 2.4.x, prior XAMPP releases were 2.2 - big changes. The same for PHP, 1.8.0/1` has PHP 5.4.x -- XAMPP 1.7.7 was PHP 5.3.8 -- big changes, particularly in Error Reporting -

PHP Error Reporting changes - hot off the press - not findable on Google or PHP.org yet
http://community.apachefriends.org/f/vi ... 17&t=50989

CHECK with any third party scripts to make sure they are compatible with Apache 2.4.x. and PHP 5.4.x Ditto check any changes you made to any of the Apache .conf files, some common features are deprecated - most notably this would be the 'NameVirtualHost' directive and 'most' versions of simple authentication methods (mod_auth... Apache Module versions), including the .htaccess syntax

Apache's Guide to upgrading to 2.4
http://httpd.apache.org/docs/2.4/upgrading.html

Going from XAMPP 1.7.7 (or other versions) to 1.8.0/1 for Windows

A. Backup
Backup your 'custom' / user added MySQL databases. You can use the phpMyAdmin export tool, MySQL Workbench (free tool from Oracle), or the mysqldump.exe Command Line tool. Take screenshots of your database names, users and settings. Make SURE you know all the passwords and they are working (you can test by logging into phpMyAdmin as those users). You will probably have to 'add-back' any users 'you' created originally (like for the WordPress 'database user') and re-create the empty databases and the user privileges, don't forget the PMA control user! This is the safest route unless you know 'a lot' about MySQL Import/Export parameters. Copy out your HTDOCS, any user added Folders that are Aliased, and any Virtual Host folders.

B. Stop XAMPP
Stop all XAMPP processes/services.

C. Complete Backup
Backup your complete XAMPP install to another location. This could be by way of a true backup program like Acronis or Fbackup or simply shutting down XAMPP and copying the entire folder to a new location.

D. Save Configurations
If you have modified the Configuration files for Apache, MySQL, PHP, and PHPmyAdmin (config.inc.php) they will likely need adjustments. (You will have to figure that out) I save them AND the log files to a XAMMP-Move folder for myself. If you are going from an earlier version, this is 'doubly true'.

E. Un-install Services
If you made Apache, MySQL, FileZilla, Mercury or Tomcat into services, un-install/remove them from the Windows service manager via the Control Panel, or by way of the Command Window using the Windows 'sc delete' command.

F. Clean UP
OK, you should be ready for this - DELETE the current XAMPP folder.

G. Install
Now either:
Use the XAMPP Installer
or
Expand the .7z or .zip downloads. Copy the new 'xampp' folder to the location of your old installation.

H. Start the New XAMPP Install
Start up the Control Panel and debug the new installation before you bring anything back.

I. If tis working - BACK UP!
If you are able to get to the XAMPP Welcome Page, use the test scripts and access phpMyAdmin - before you do anything else, shut everything down and make a reliable backup.

J. Check Up
CHECK (again) with any third party scripts to make sure they are compatible with Apache 2.4.x. and PHP 5.4.x - Ditto check any changes you made to any of the Apache .conf files, some common features are deprecated - most notably this would be the 'NameVirtualHost' directive and 'most' versions simple authentication methods, including the .htaccess syntax. Make needed changes to the Apache .conf files php.ini and my.ini to get your install 'like the old one' or as close as you can come. Hackattack suggests doing a side-by-side review using a diff utility (good idea) - WinMerge is a very friendly one, or you can use a programmer's editor like the excellent (and free) Notepadd++

J. Never ever try to recreate or copy application metadata
Such as the database and tables for MySQL database engine itself or phpMyadmin - which is an application/shell for MySQL. This data is specific to each installation, and is often structured differently in different version of the applications.

K. NEVER EVER copy the entire MySQL toplevel 'data' folder.
It contains metadata on the state of the MySQL installation and other data that may be specific to 'other application states'. You can, under some conditions, copy the data folders for individual databases/tables - you need to refer to the MySQL documentation before you attempt this, and understand the consequences, and the remediation that may be required. Only real MySQL experts attempt this (and usually because the database is corrupt or in an inconsistent state). I personally always user MySQL Workbench Export/Import (or Navicat). If you use the export/import methodology you will rarely go wrong.

http://dev.mysql.com/doc/refman/5.5/en/ ... eries.html

L. Recreate User defined/added metadata & Re-install scripts/applications
Recreate your 'self-added' database users as described in A, and their privileges. Always check the third party scripts you are using for compatibility/version issues (as stated twice before). Once everything is stable, REINSTALL any third party scripts and follow their instructions to 'restore' as if it were a 'server' move, because that is what you have just done.

M. Restore MySQL Data
Now Restore your MySQL user-created databases using phpMyAdmin, the MySql command line, or other MySQL management tools - like MySQL workbench.

N. Finally -
Make another backup and test your applications.

Also be sure to take potty breaks and that you have adequate liquids on hand :mrgreen:

Many thanks to Altrea for his assistance and review.

Good Luck
8)
{edited Oct 11, 2012 to include 1.8.1}
User avatar
JonB
AF Moderator
 
Posts: 3210
Joined: 12. April 2010 16:41
Location: Land of the Blazing Sun
Operating System: Windows XP/7 - Fedora 15 1.7.7

Re: How to "upgrade" to XAMPP 1.8.0

Postby hwalker1 » 24. August 2012 08:46

That's a great article, but it looks rather a big job.
I'll stick to 1.73 and do a new install on a different computer.
Pity the standard release notes don't tell you all of this.
Its not even obvious that there is not an upgrade package.
hwalker1
 
Posts: 29
Joined: 10. November 2010 11:59
Location: United Kingdom
Operating System: Windows 7 Ultimate 64 bit

Re: How to "upgrade" to XAMPP 1.8.0 or 1.8.1

Postby riinfotech » 28. March 2013 12:28

great information.... thanks for this
riinfotech
 
Posts: 1
Joined: 28. March 2013 12:20
Operating System: windows 7

Re: How to "upgrade" to XAMPP 1.8.0 or 1.8.1

Postby Mach30 » 09. May 2013 22:42

Really???
You guys can automate this with a bat file:

a move
rename C:\xampp C:\xampp-2013-05-09
an install
install xampp 1.8.1
a couple of copies:
cp -R C:\xampp-2013-05-09\htdocs\* C:\xampp\htdocs
....
a bit of clean up...

install, copy (dbs and htdocs) and leave C:\xampp (new) and C:\xampp-2013-05-09 left behind???

This make this impossible for some, and a pain for everybody who loves XAMPP before 1.8.1

Please...
Mach30
 
Posts: 3
Joined: 09. May 2013 22:33
Operating System: Win7

Re: How to "upgrade" to XAMPP 1.8.0 or 1.8.1

Postby Mach30 » 10. May 2013 02:27

OK: Here is the quick and fast upgrade method in Win7 that I used:

*** Rename xampp to xampp-2013-05-09 ****
1) stop mysql, apache, filezilla, etc. in xampp control panel
2) restart in safe mode with cmd prompt (Hold down F8 key while booting)
3) cd \
4) rename xampp xampp-2013-05-09
5) ctl-alt-delete - restart button in lower left corner - select restart
6) restart in normal mode

**** Install new xampp normally, then stop any running databases ****
7) login and install the new xampp 1.8.1 normally
8) after install start the new xampp control panel (pretty)... Stop any running tasks mysql, apache, etc (mine had none).

*** Copy the db and htdocs directories ***
9) Open Windows "My Computer" open to C:\xampp\htdocs
10) Open a second window: Windows "My Computer" open to C:\xampp-2013-05-09\htdocs
11) Copy any files or folders you want to upgrade to C:\xampp\htdocs
12) Change directory first window: Windows "My Computer" open to C:\xampp\mysql
13) rename data data-release-original
14) Open a second window: Open Windows "My Computer" open to C:\xampp-2013-05-09\mysql
15) copy data directory from C:\xampp\mysql\data to C:\xampp-2013-05-09\mysql\data
16) startup apache, mysql, etc from new xampp panel
17) everything is running normally.

*** Done ***

Surely this could have been automated with a simple bat file without any of the mysticism:
". NEVER EVER copy the entire MySQL toplevel 'data' folder..."
(See Copy an Existing Data Directory at http://dev.mysql.com/doc/refman/5.0/en/multiple-data-directories.html )
This preserves the user name logins, databases, passwords, etc.

It worked for me. Use at your own risk.... (You have a backup copy in xampp-2013-05-09 that you could copy back).
Mach30
 
Posts: 3
Joined: 09. May 2013 22:33
Operating System: Win7

Re: How to "upgrade" to XAMPP 1.8.0 or 1.8.1

Postby Mach30 » 10. May 2013 02:29

P.S. That's why God made engineers.
Mach30
 
Posts: 3
Joined: 09. May 2013 22:33
Operating System: Win7

Re: How to "upgrade" to XAMPP 1.8.0 or 1.8.1

Postby Queenielass » 10. May 2013 19:03

Mach30 wrote:P.S. That's why God made engineers.


:D
Queenielass
 
Posts: 2
Joined: 18. March 2010 20:50


Return to XAMPP for Windows

Who is online

Users browsing this forum: No registered users and 167 guests