What you could do is let yum just start and install it's stuff in
/var/lib/mysql. Then an exec of mysql_install_db with an onlyif attribute
that checks for the mysql metadata in /data/mysql.


On Wed, Dec 4, 2013 at 4:02 PM, Thomas <[email protected]> wrote:

> Yes it might be tricky to integrate it but I think this would be a useful
> enhancement.
>
>
> On Wednesday, December 4, 2013 7:38:46 AM UTC-5, Luke Bigum wrote:
>>
>> It should be theoretically possible. The mysql-server package owns
>> /var/lib/mysql, but it is the mysql_install_db script that sets up an empty
>> database in $datadir when the service starts if $datadir is empty. If you
>> update your config file before you start the mysql server, you should be
>> able to point it at any datadir you like. It will leave an empty directory
>> at /var/lib/mysql, but hopefully you are ok with that as it's owned by an
>> RPM.
>>
>> I had a quick look at the module, /var/lib/mysql is hard coded in a lot
>> of places and you'd have to override / set most of them as well as in
>> my.cnf:
>>
>> $ grep -R '/var/lib/mysql' *
>> manifests/params.pp:      $datadir               = '/var/lib/mysql'
>> manifests/params.pp:      $socket                =
>> '/var/lib/mysql/mysql.sock'
>> manifests/params.pp:      $datadir               = '/var/lib/mysql'
>> manifests/params.pp:        /(SLES|SLED)/        =>
>> '/var/lib/mysql/mysql.sock',
>> manifests/params.pp:        /(SLES|SLED)/        =>
>> '/var/lib/mysql/mysqld.pid',
>> manifests/params.pp:      $datadir              = '/var/lib/mysql'
>> manifests/params.pp:          $datadir               = '/var/lib/mysql'
>> manifests/params.pp:          $socket                =
>> '/var/lib/mysql/mysql.sock'
>>
>>
>> On Wednesday, December 4, 2013 12:30:31 PM UTC, Walter Heck wrote:
>>>
>>> Tried and failed. The problem is that the mysql package automatically
>>> uses /var/lib/mysql, so the right sequence is:
>>>
>>> 1) yum install mysql-server
>>> 2) service mysqld stop
>>> 3) adjust my.cnf
>>> 4) make moves on filesystem if needed
>>> 5) service mysqld start
>>> (steps 2 and 3 can be reversed)
>>>
>>> This is hard to puppetise as it is only needed the very first time when
>>> mysql is not yet installed. I've only ever had to do this on smaller groups
>>> of servers at a time, so always resorted to doing it manually.
>>>
>>> let me know if you figure it out, would be great to see a solution in
>>> puppetlabs-mysql.
>>>
>>>
>>> On Wednesday, 4 December 2013 02:39:50 UTC+1, Thomas wrote:
>>>>
>>>> Has anybody sucessfully used puppetlabs-mysql (or some other method) to
>>>> install MySQL-server on Linux with a my.cnf where datadir != /var/lib/mysql
>>>> ?
>>>>
>>>  --
> You received this message because you are subscribed to a topic in the
> Google Groups "Puppet Users" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/puppet-users/mkQygmpa610/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/puppet-users/c274653e-dc52-4f18-8908-59024b2450dd%40googlegroups.com
> .
>
> For more options, visit https://groups.google.com/groups/opt_out.
>



-- 
Walter Heck

--
Check out my startup: Puppet training and consulting @
http://www.olindata.com
Follow @olindata on Twitter and/or 'Like' our Facebook page at
http://www.facebook.com/olindata

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CAJojfjqK4uY9ePh%3DSS7HJkfMXUHLNU2g0%2B0SXeFEMt8x5yoLQw%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to