有没有办法通过apt-get来安装mysqld,并使其具有数据文件的非默认path?
我知道我可以使用默认值来安装它,然后移动东西(我已经这样做了),但是我有大约十几个不同的地方需要更新东西(my.cnf中的4-5,app-armor中的6-8 ,我觉得还有其他的东西,我忘了)。
编辑:我假设/希望相关的configuration文件都是在安装时生成,而不是硬编码为静态内容。 假设,我需要的是一种方法,通过apt-get传递标志来调整用于指定相关path的variables。
如果你想让它们为你安装特殊的path,你将不得不自己创build一个mysql包。 使用符号链接或者绑定坐标来移动你想要移动的任何地方会更容易。
否则,您的select是从源代码构build自定义软件包的正确方法,也是用ar拆分现有软件包,更改所有path和configuration文件,然后重新合并的非常非常错误的方法。
你所提到的都是适合的,而不是任何具体的分配。
我只是对Debian Lenny mysql服务器的deb源码进行了preinst / postinst脚本的快速检查。 这些文件夹被硬编码为包含的pipe理脚本和默认configuration文件的一部分。 在Debian Lenny上没有神奇的工具,我怀疑其他人在安装完成之前redirect数据/日志文件夹。 Debconf没有在我看到的Mysql包的版本中使用,但是这个工具通常用来设置其他包的首选项。
所以简单的答案是,你可能需要修复安装后的东西。 如果你抓住软件包的源代码,并看看/var/lib/dpkg/info/mysql*中的脚本,你应该清楚究竟需要改变什么。
根据你的发行版,你也许可以在/etc/mysql/conf.d/...文件中覆盖mysql设置?