Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Sep 2004 15:02:15 +0100
From:      Matthew Seaman <m.seaman@infracaninophile.co.uk>
To:        Bart Silverstrim <bsilver@chrononomicon.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Moving MySQL database
Message-ID:  <20040903140215.GB23032@happy-idiot-talk.infracaninophile.co.uk>
In-Reply-To: <1D64B3BF-FDAF-11D8-ABDA-000D9338770A@chrononomicon.com>
References:  <1D64B3BF-FDAF-11D8-ABDA-000D9338770A@chrononomicon.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--KFztAG8eRSV9hGtP
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Sep 03, 2004 at 09:42:36AM -0400, Bart Silverstrim wrote:
> I have a server that is rapidly filling the var partition with a MySQL=20
> database.  I'd like to move it to a subdirectory somewhere under /usr.
>=20
> Is there a document that would outline a "best practices" approach to=20
> doing this?  My first instinct was to stop the mysqld, do a mv on=20
> /var/db to /var/db2 to rename it, copy the data to a /usr/local/db=20
> folder and alter permissions on it to match /var/db, then make a=20
> softlink between /usr/local/db and /var/db and restart mysqld so mysqld=
=20
> wouldn't need any reconfiguring and everything, I would *think*, should=
=20
> keep working...only now it will be working off a far more spacious=20
> partition.

I'd do it this way:

    i) Stop mysql

   ii) Remove (pkg_delete) the mysql-server package

  iii) Move the database files to their new location, taking care to
       preserve ownership, permissions, timestamps etc.

   iv) Reinstall the mysql-server port setting a different DB_DIR on
       the make command line:

        # make DB_DIR=3D/usr/local/db install

    v) Make sure that the home directory of the mysql user account is
       the same as you set DB_DIR to.  The port should take care of
       that, but it won't hurt to double check.

        % grep mysql /etc/passwd =20
        mysql:*:88:88:MySQL Daemon:/usr/local/db:/sbin/nologin

   vi) Restart the mysql server.  Verify that your data survived the
       move.

And that's it: you're done.

	Cheers,

	Matthew

--=20
Dr Matthew J Seaman MA, D.Phil.                       26 The Paddocks
                                                      Savill Way
PGP: http://www.infracaninophile.co.uk/pgpkey         Marlow
Tel: +44 1628 476614                                  Bucks., SL7 1TH UK

--KFztAG8eRSV9hGtP
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (FreeBSD)

iD8DBQFBOHlniD657aJF7eIRAmpSAJ9pdyzNPf5woMX1ECNpZodFJYkWXQCgjGki
QsO8HdaXY9Dn9iXgnTXipXM=
=Z9RO
-----END PGP SIGNATURE-----

--KFztAG8eRSV9hGtP--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040903140215.GB23032>