public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
From: Alan McKinnon <alan.mckinnon@gmail.com>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] Proper way of updating mysql from 5.0.90-r2 to 5.1.50?
Date: Wed, 1 Sep 2010 23:05:05 +0200	[thread overview]
Message-ID: <201009012305.05409.alan.mckinnon@gmail.com> (raw)
In-Reply-To: <AANLkTimoL=EPBCNxQCLpyr-fTt9CN1POYuxMpWRke1R_@mail.gmail.com>

Apparently, though unproven, at 22:15 on Wednesday 01 September 2010, Mick did 
opine thusly:

> 2010/9/1 Aniruddha <mailingdotlist@gmail.com>:
> > On Tuesday 31 August 2010 20:30:55 Mick wrote:
> >> > But this is apparently not the proper way, because after
> >> > restarting the server, apache does not show my web-page
> >> > reporting there is no such a database. I checked it with
> >> > phpmyadmin, and really, there is absolutely no database
> >> > in mysql!
> >> > 
> >> > I quickly restored backup version which I have done just
> >> > before trying mysql-update, so my web-site is up and running.
> >> > Now I would like to update mysql the right way, I but do not
> >> > know how to do it...
> >> 
> >> Hi Jarry,
> >> 
> >> Some years ago I ran into some similar problem, I can't recall exactly
> >> what. Lost in folklore (wiki?) were some instructions to first stop
> >> mysql before you update it and I have been following them since.
> >> 
> >> I stop apach & mysql, run the update,  dispatch-conf and then restart
> >> them both.  Haven't had problems since.
> >> 
> >> There may be a better way for doing this - in which case others who know
> >> better will hopefully chime in.
> > 
> > I'm curious as well. Imo it shouldn't be necessary to stop mysql server
> > for each update.
> 
> Actually, this problem may be more sinister ... a bug?
> 
> I also updated to the latest stable and as soon as I tried to restart
> apache I got:
> =========================================
> # /etc/init.d/apache2 start
>  * apache2 has detected an error in your setup:
> apache2: Syntax error on line 155 of /etc/apache2/httpd.conf: Syntax error
> on line 4 of /etc/apache2/modules.d/70_mod_php5.conf: Cannot load
> /usr/lib/apache2/modules/libphp5.so into server: libmysqlclient.so.15:
> cannot open shared object file: No such file or directory
> =========================================
> 
> What the ... ?
> 
> Line 155 of my /etc/apache2/httpd.conf says:
> 
> Include /etc/apache2/modules.d/*.conf
> 
> Line 4 of /etc/apache2/modules.d/70_mod_php5.conf, says:
> 
> LoadModule php5_module    modules/libphp5.so
> 
> Also, I seem to have modules/libphp5.so and is world readable:
> 
> $ ls -la /usr/lib/apache2/modules/libphp5.so
> -rw-r--r-- 1 root root 5720576 Aug 13 20:09
> /usr/lib/apache2/modules/libphp5.so
> 
> 
> I am downgrading now before a lynch mob arrives, but has anyone else
> run into this problem?
> 
> PS. I'm running www-servers/apache-2.2.16


You got so close to the real answer, just one more step :-)

$ ldd /usr/lib64/apache2/modules/libphp5.so | grep mysql
        libmysqlclient_r.so.16 => /usr/lib64/mysql/libmysqlclient_r.so.16 
(0x00007f185d528000)

Think this through: you have a complex piece of software with it's config in 
memory. A library that uses a library uses a library. Then you remove that 
last library and replace it with version x+1.

How do you expect the library in the middle of the chain to know about that? 
Via magic? Voodoo? Some automatic-check-if-stuff-changed-cron-job?

No, you just simply restart services that use things that changed, especially 
if they used (then closed) the file you just changed.

You might also need revdep-rebuild to get everything back 100%. It's all just 
situation-normal for a source based distro. Nothing you can, or should, try to 
"fix".


-- 
alan dot mckinnon at gmail dot com



  reply	other threads:[~2010-09-01 21:08 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-31 17:32 [gentoo-user] Proper way of updating mysql from 5.0.90-r2 to 5.1.50? Jarry
2010-08-31 18:30 ` Mick
2010-09-01 20:00   ` Aniruddha
2010-09-01 20:15     ` Mick
2010-09-01 21:05       ` Alan McKinnon [this message]
2010-09-01 21:05       ` Dale
2010-09-01 21:18         ` Alex Schuster
2010-09-01 21:25           ` Tanstaafl
2010-09-01 21:38             ` Mick
2010-09-02  9:55               ` Dale
2010-09-02 18:09                 ` Mick
2010-09-01 22:45             ` Alex Schuster
2010-09-01 23:09               ` Dale
2010-09-02  5:10     ` kashani
2010-09-02 18:12       ` Mick
2010-09-03  3:40         ` kashani
2010-09-04  5:53   ` Jarry
2010-09-04 21:43     ` kashani
2010-09-04 22:30       ` Mick
2010-09-05  9:29         ` Mick
2010-09-05 10:08           ` Mick

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201009012305.05409.alan.mckinnon@gmail.com \
    --to=alan.mckinnon@gmail.com \
    --cc=gentoo-user@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox