PDA

View Full Version : Upgrading from Perl 5.6.0 to Perl 5.8.7



Cypher300
04-11-2006, 03:09 PM
Is there anything I need to lookout for when installing Perl 5.8.7 from Perl 5.6.0? I've been scouring the site and haven't seen any upgrade roadmaps. Any suggestions would be appreciated.

eimagesite
10-23-2006, 06:37 AM
I just posted this, but in the wrong forum! - so I cannot help, but would also be grateful for assistance.

I use my WestHost site for development and it is now running an older version of Perl (5.6.0) than my live site (5.8.3). If I go to the applications installation interface to install Perl 5.8.7 I get a message saying:

Warning: If you wish to keep the data files for Perl 5.6.0, you must first back them up manually before uninstalling it, otherwise the data files will be irrevocably lost.

Well what are these data files, do I really need to back them up?
Also, do I need to/should I change from PerlMySQL 1.1 to PerlMySQL 1.48? (I am running MySQL4 4.1.9)

Hugh

blender
10-23-2006, 10:10 AM
It has been my experience that with Perl the upgrade is pretty straight forward. You can just uninstall the old one and install the new one without a hitch. I think the warning to "backup your data files" is somewhat generic among the Site Applications and it probably applies more to the others in this case (such as MySQL where there is actually some of your data stored in the application).

The only things I can think of with Perl would be that if you have manually installed any of your own Perl modules those would need to be reinstalled in the new version. Also if you are using Dadamail there are some files in there that will need to be updated to run with the new version of Perl.

And yes you need to install the newer version of the PerlMySQL libraries to correspond with the newer version of Perl.

Hope that helps,

-Blender

eimagesite
12-15-2006, 07:34 AM
Well my site didn't work afterwards, but the fix is simple:

cd /tmp ; ln -s /var/lib/mysql/mysql.sock mysql.sock

I did do a mysqld stop followed by mysqld start
and I did do a kill -HUP the httpd process just to make sure and everything seems to work.

Hugh

torrin
12-15-2006, 07:47 AM
Well my site didn't work afterwards, but the fix is simple:

cd /tmp ; ln -s /var/lib/mysql/mysql.sock mysql.sock

I'd advise putting that link line in the mysql startup script. I've had that link deleted on me. Probably when starting over the vps or something. Anyway, I put this on line 160 . . .


ln -fs $datadir/mysql.sock /tmp/mysql.sock

eimagesite
12-15-2006, 10:03 AM
Ah, yes I was going to add a rider that if you do it this way then the link gets deleted everytime that the system is rebooted.
But, what I did for a pseudo permanent fix, i.e. until the config file moves, is in the call to connect I have passed the name of West Host's configuration file:

my $dsn = 'DBI:mysql:mydatabasename';
if( -d '/usr/home/eimagesite' ) { # West Host
$dsn .= ';mysql_read_default_file=/etc/my.cnf';
}

You might prefer to create a mini configuration file in one of your Perl source directories, it just needs to contain:

[client]
socket=/var/lib/mysql/mysql.sock

Hugh