Name:mysqlVersion:5.5.25Release:1%{?dist}License:GPLGroup:applications/databaseURL:http://www.percona.com/redir/downloads/Percona-Server-5.6/LATEST/so

Name: mysql

Version:5.5.25

Release: 1%{?dist}

License: GPL

Group: applications/database

URL:

BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root

BuildRequires: cmake

Requires: coreutils,shadow-utils

Packager: lgl15984@163.com

Autoreq: no

Source: mysql-5.5.25.tar.gz

prefix: /usr/local/%{name}

Summary: percona server 5.6.19-67.0

%description

Percona Server is an enhanced, drop-in MySQL replacement which has been downloaded more than 1,000,000 times.

A free open source solution, Percona Server is a MySQL alternative which offers breakthrough performance, scalability, features, and instrumentation. Self-tuning algorithms and support for extremely high-performance hardware make it the clear choice for organizations that demand excellent performance and reliability from their MySQL database server.

%define MYSQL_USER mysql

%define MYSQL_GROUP mysql

%define __os_install_post %{nil}

%prep

%setup -n %{name}-%{version}

%build

CFLAGS="-O3 -g -fno-exceptions -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing"

CXX=g++

CXXFLAGS="-O3 -g -fno-exceptions -fno-rtti -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing"

export CFLAGS CXX CXXFLAGS

cmake .                                                  \

-DSYSCONFDIR:PATH=%{prefix}                            \

-DCMAKE_INSTALL_PREFIX:PATH=%{prefix}                  \

-DWITH_ARCHIVE_STORAGE_ENGINE=1                       \

-DWITH_INNOBASE_STORAGE_ENGINE=1             \

-DDEFAULT_CHARSET=utf8                                 \

-DDEFAULT_COLLATION=utf8_general_ci                    \

-DENABLED_LOCAL_INFILE=0                             \

-DWITH_DEBUG=0                                        \

-DENABLE_DTRACE=0                     \

-DEXTRA_CHARSETS=all                     \

-DWITH_INNODB_MEMCACHED=1;

make -j `cat /proc/cpuinfo | grep processor| wc -l`

%install

rm -rf %{buildroot}

make DESTDIR=$RPM_BUILD_ROOT install

cp %{_sourcedir}/my.cnf $RPM_BUILD_ROOT%{prefix}/

%clean

#rm -rf $RPM_BUILD_ROOT

rm -rf $RPM_BUILD_DIR/*

%files

%defattr(-, %{MYSQL_USER}, %{MYSQL_GROUP})

%attr(755, %{MYSQL_USER}, %{MYSQL_GROUP}) %{prefix}/*

%pre

if ! id %{MYSQL_USER} > /dev/null 2>&1;then

useradd -M -s /sbin/nologin %{MYSQL_USER}

fi

mkdir -p /data/{mysql1,mysql2,mysql3,mysql4,mysql5}

chown -R mysql:mysql /data/{mysql1,mysql2,mysql3,mysql4,mysql5}

mkdir /usr/local/mysql

%post

if [ -f %{prefix}/support-files/mysql.server > /dev/null 2>&1 ]  && [ ! -f %{_initddir}/mysql > /dev/null 2>&1 ];then

cp %{prefix}/support-files/mysql.server %{_initddir}/mysql

chmod +x %{_initddir}/mysql

chkconfig --level 2345 %{_initddir}/mysql on

fi

#ln -s /usr/local/mysql/bin/* /usr/bin

#cp -rf /usr/local/mysql/lib/* /lib/

#cp -rf /usr/local/mysql/lib/* /lib64/

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql1 --user=mysql >/dev/null 2>&1

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql2 --user=mysql >/dev/null 2>&1

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql3 --user=mysql >/dev/null 2>&1

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql4 --user=mysql >/dev/null 2>&1

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql5 --user=mysql >/dev/null 2>&1

/usr/local/mysql/bin/mysqld_multi start 1-5

if [ ! -f %{_sysconfdir}/my.cnf ];then

cp %{prefix}/my.cnf %{_sysconfdir}/my.cnf

else

cp %{prefix}/my.cnf %{_sysconfdir}/my.cnf.rpmnew

fi

%preun

if [ -f %{_sysconfdir}/my.cnf ];then

mv %{_sysconfdir}/my.cnf %{_sysconfdir}/my.cnf.rpmold

fi

if [ -f %{_initddir}/mysql ];then

mv %{_initddir}/mysql %{_initddir}/mysql.rpmold

fi

%postun

rm -rf %{prefix}

#userdel -r %{MYSQL_USER} >/dev/null 2>&1

%changelog,

rpmbuild打包mysql5.7_用rpmbuild打包mysql相关推荐

  1. 项目打包rpm包(rpmbuild)

    这里以python项目为例,通过rpmbuild工具打包成rpm包,并进行安装验证 rpmbuild打包 rpm流程 构建rpmbuild打包目录 rpmbuild 默认变量配置文件 将我们的pyth ...

  2. Py打包应用程序(zipapp打包.pyz文件、pyinstaller打包exe文件)

    ''' Py打包应用程序.py (zipapp打包.pyz文件.pyinstaller打包exe文件)注意: 一.zipapp模块 打包档案包 的 命令行语法: python -m zipapp so ...

  3. linux的文件压缩打包操作,Linux文件管理-压缩打包

    原标题:Linux文件管理-压缩打包 压缩打包介绍 windows下我们接触最多的压缩文件就是.rar格式, 但Linux有自己所特有的压缩工具. 如果希望windows和Linux互相能使用的压缩工 ...

  4. webpack打包php资源,webpack不打包指定的js文件

    背景: 在项目实际开发中,有一些IP地址需要随时修改,进行部署,例如websocket的地址.因此在项目打包的时候,不希望保持IP地址的文件被打包,因此就需要把需要修改的常量独立出来,存放在一个js文 ...

  5. python打包发布到手机_Python打包操作与在线发布

    打包操作: 1.安装打包工具 2.在包文件中,添加构建模块 setup.py 在构建模块中,添加项目描述信息 from distutils.core import setup setup( name= ...

  6. js获取微信状态栏高度_人人商城打包app教程 方法 hbuilder打包支持支付宝微信原生支付...

    使用hbuilder打包人人商城app 方法支持微信支付宝原生支付 介绍 人人商城打包使用hbuilder打包app需要的文件,目前支持微信原生支付,支付宝原生支付,原生退出app ,还没有写分享和原 ...

  7. linux++tar打包目录,linux中tar命令打包目录与排除目录打包linux操作系统 -电脑资料...

    本文章来给各位朋友详细介绍关于linux中tar命令打包目录与排除目录打包有需要了解tar命令的使用方法的朋友可进行参考参考, 打包压缩目录很简单如下代码如下复制代码 tar -czf small.t ...

  8. java项目打成jar和war_maven打包web项目时同时打包为war和jar文件的方法

    本文介绍了maven打包web项目时同时打包为war和jar文件的方法,分享给大家,具体如下: 首先在pom.xml文件中指定war的打包方式,war test test war 上述代码在eclip ...

  9. iOS打包framework - Swift完整项目打包Framework,嵌入OC项目使用

    场景说明: -之前做的App,使用Swift框架语言,混合编程,内含少部分OC代码. -需要App整体功能打包成静态库,完整移植到另一个App使用,该App使用OC. -所以涉及到一个语言互转的处理, ...

最新文章

  1. 普通平键的主要尺寸有_快来收下这份家装尺寸表,衣柜不再鸡肋
  2. windows phone 学习之页面导航和数据传递
  3. 很好的大数据名词解释,收藏
  4. 大四实习有点晚[转载]
  5. 利用百度LBS做一个小Demo
  6. 如何将对象中的内容按照一定的顺序进行排序
  7. ActiveMQ学习总结(8)——消息队列设计精要
  8. (227)FPGA学习基础
  9. Liferay中配置MySQL数据库的两种方法
  10. Cocos2d-x特殊节点对象(瓦片地图、粒子系统、视差滚动)概述
  11. 中卫市地图arcgis数据shp道路地名县区边界水系2021年(下载说明)
  12. ubuntu 文件名乱码
  13. [20170209]索引范围访问2.txt
  14. SAP 财务替代(基本内容及常用财务替代配置涉及退出提供源代码)
  15. 跳槽遇到背景调查,你可以这样做!
  16. 一个比较有趣的题:推算今天星期几
  17. Transformer Decoder
  18. ES性能优化原理揭秘!初看一脸懵逼,看懂直接跪下。。。
  19. 冬季到吉林来玩雪|史上最全的吉林冬季旅游攻略!
  20. Kali linux 学习笔记(三十一)无线渗透——密钥交换(PTK)2020.3.11

热门文章

  1. Vim之代码异步检测插件 ALE -- 实时检查verilog等代码的正确性
  2. mac环境下myeclipse上配置tomcat
  3. 跑Java -jar somefile.jar时会发生什么(一个)
  4. 用SQL命令查看Mysql数据库大小
  5. 每句话都可以品半辈子!!!
  6. 云从科技在渝布局人工智能大数据平台
  7. [RK3288][Android6.0] 调试笔记 --- 软硬键盘同时使用【转】
  8. 国产操作系统可以基于BSD开发再闭源吗?
  9. 安全、稳定、可靠甲骨文定义PaaS新时代
  10. 对于容器环境来说 全栈监控究竟意味着什么?