debian mysql deb_debian下mysql deb包的制作

本文档详细介绍了如何在Debian系统中制作MySQL的DEB安装包,包括安装编译环境、下载源码、使用dh_make初始化、编辑配置文件、构建DEB包以及安装步骤。通过这个过程,可以简化MySQL的安装和管理。
摘要由CSDN通过智能技术生成

最近用debian,老编译mysql 源码,觉得实在是太麻烦,就参照

debian.linuxsir.org/doc/inthedebianway/debian_build_package.html

,自己也定制了一个mysql.deb

步骤如下:

1:安装编译环境

apt-get install dh-make fakeroot gcc g++

2:下载源码包并准备安装:http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.41.tar.gz

(http://mirrors.sohu.com/mysql/MySQL-5.1/)

mkdir -R /home/yangting/mysql/

cd /home/yangting/mysql/

tar zxvf mysql-5.1.41.tar.gz

cd mysql-5.1.41

3:初始化 dh_make -e mysqldba@126.com -f ../mysql-5.1.41.tar.gz

Type of package: single binary, multiple binary, library, kernel module, kernel patch or cdbs?

[s/m/l/k/n/b] s

Maintainer name : root

Email-Address   : mysqldba@126.com

Date            : Tue, 24 Nov 2009 04:04:53 -0500

Package Name    : mysql

Version         : 5.1.39

License         : blank

Using dpatch    : no

Using quilt     : no

Type of Package : Single

Hit to confirm:

Done. Please edit the files in the debian/ subdirectory now. leafpad

uses a configure script, so you probably don't have to edit the Makefiles.

4:构建配置文件

都在当前目录的debian下,主要是changelog, control, rules, postinst,postrm, preinst,prerm

rules:只要是编译时的配置文件,

preinst deb安装前执行的脚本

postinst:deb安装后执行的脚本

prerm:删除前执行的脚本

postrm:删除后执行的脚本

cd debian

preinst 这四个脚本只需把当前目录下的ex文件复制过来修改即可

rules:我修改如下: ./configure $(CROSS) --prefix=/usr/local/mysql --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"  --with-plugins=all --without-plugin-ndbcluster --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --without-debug --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=all

postinst:我修改如下:

basedir=/usr/local/mysql

if [ -d $basedir ]

then

cp $basedir/share/mysql/mysql.server /etc/init.d/mysqld

cp $basedir/share/mysql/my-medium.cnf /etc/my.cnf

#在[mysqld]后插入两行http://www.linux.gov.cn/shell/sed_fei.htm

sed -i '/\[mysqld\]/ a\basedir=/usr/local/mysql' /etc/my.cnf

sed -i '/\[mysqld\]/ a\datadir=/usr/local/mysql/data/' /etc/my.cnf

$basedir/bin/mysql_install_db

chown -R mysql:mysql $basedir

/etc/init.d/mysqld start

fi

case "$1" in

。。。。。。。

5:构建 .deb 包

cd ..

[/home/yangting/mysql/mysql-5.1.39]

dpkg-buildpackage -rfakeroot -uc -b

将会在其上一级目录生成mysql_5.1.41-1_i386.deb

6:安装:

dpkg -i mysql_5.1.41-1_i386.deb

这样就可以安装并启动mysql了

[dpkg 命令     作用

dpkg -i package.deb     安装包

dpkg -r package     删除包

dpkg -P package     删除包(包括配置文件)

dpkg -L package     列出与该包关联的文件

dpkg -l package     显示该包的版本

dpkg --unpack package.deb     解开 deb 包的内容

dpkg -S keyword     搜索所属的包内容

dpkg -l     列出当前已安装的包

dpkg -c package.deb     列出 deb 包的内容

dpkg --configure package     配置包

]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值