增加用户:

# groupadd -r mysql
# useradd -g mysql -r -s /sbin/nologin -M -d /data/my_db mysql

源码安装mysql-5.6.33.tar.gz 初始代数据库

[root@c01 mysql-5.6.33]# cp /apps/mysql-5.6.33/support-files/mysql.server /etc/init.d/mysqld

[root@c01 mysql-5.6.33]# chmod 777 /etc/init.d/mysld
修改以下内容
basedir=/apps/mysql-5.6.33
datadir=/data/my_db
# Set some defaults
mysqld_pid_file_path=/data/my_db/mysqld.pid [root@c01 mysql-5.6.33]# ln -sv /apps/mysql-5.6.33/include /usr/include/mysql
`/usr/include/mysql' -> `/apps/mysql-5.6.33/include' [root@c01 mysql-5.6.33]# /apps/mysql-5.6.33/scripts/mysql_install_db --datadir=/data/my_db --user=mysql
[root@c01 mysql-5.6.33]# echo '/apps/mysql-5.6.33/lib' >/etc/ld.so.conf.d/mysql-x86_64.conf
[root@c01 mysql-5.6.33]# ldconfig
[root@c01 mysql-5.6.33]# echo 'export PATH=/apps/mysql-5.6.33/bin/:$PATH' >/etc/profile.d/mysql.sh
[root@c01 mysql-5.6.33]# source /etc/profile
[root@c01 mysql-5.6.33]# mv /etc/init.d/mysld /etc/init.d/mysqld [root@c01 tmp]# fpm -s dir -t rpm -v 5.6.33 -n mysql --before-install /tmp/before.sh --after-install /tmp/after.sh --after-remove /tmp/remove.sh -d 'libaio' /apps/mysql-5.6.33/ /data/my_db/ /etc/init.d/mysqld
no value for epoch is set, defaulting to nil {:level=>:warn}
no value for epoch is set, defaulting to nil {:level=>:warn}
Created package {:path=>"mysql-5.6.33-1.x86_64.rpm"}

下面是所需要的脚本:

# cat /tmp/after.sh
#!/bin/bash
ln -sv /apps/mysql-5.6.33/include /usr/include/mysql
echo '/apps/mysql-5.6.33/lib/' > /etc/ld.so.conf.d/mysql.conf
ldconfig
echo 'export PATH=/apps/mysql-5.6.33/bin/:$PATH' > /etc/profile.d/mysql.sh
source /etc/profile
chown -R mysql:mysql /data/my_db
echo "[mysqld]
basedir=/apps/mysql-5.6.33
datadir=/data/my_db
port=3306
socket=/data/my_db/mysql.sock
user=mysql
innodb_file_per_table=on
skip_name_resolve=on
symbolic-links=0
init-connect='SET NAMES utf8'
character-set-server=utf8
max_connections=5000
max_connect_errors=100000
[mysqld_safe]
log-error=/data/my_db/mysqld.log
pid-file=/data/my_db/mysqld.pid
[client]
socket=/data/my_db/mysql.sock
" >/etc/my.cnf
# cat /tmp/before.sh
#!/bin/bash
#创建mysql数据存储目录
if [ ! -d /apps/mysql-5.6.16 ];then
mkdir /apps/mysql-5.6.16 -p
fi
if [ ! -d /data/my_db ];then
mkdir /data/my_db -p
fi
#创建mysql用户
groupadd -r mysql
useradd -g mysql -r -s /sbin/nologin -M -d /data/my_db mysql
#
if [ -f /etc/ld.so.conf.d/mysql-x86_64.conf ];then
rm -rf /etc/ld.so.conf.d/mysql-x86_64.conf
fi
# cat /tmp/remove.sh
#!/bin/bash
userdel -r mysql
if [ -f /etc/ld.so.conf.d/mysql.conf ];then
rm -rf /etc/ld.so.conf.d/mysql.conf
fi
if [ -f cat /etc/profile.d/mysql.sh ];then
rm -rf cat /etc/profile.d/mysql.sh
fi

fpm制做mysql-5.6.33 rpm包的更多相关文章

  1. CentOS7安装MySQL的方法之RPM包方式

        CentOS7安装MySQL的方法之RPM包方式        

  2. Linux 安装 MySQL 详解(rpm 包)

    说明:Linux 系统中软件的安装在 root 用户下进行,此安装方式为 rpm 包方式,安装的版本为:MySQL-5.6.25-1.linux_glibc2.5.x86_64.rpm-bundle. ...

  3. mysql之各版本rpm包安装

    发现每次想用mysql的rpm包直接安装的时候,都会出现找不到对应的rpm包的情况,故记录一下查找过程 进入官网->downloads->community->mysql commu ...

  4. 在centos使用rpm包的方式安装mysql,以及更改root密码

    在centos使用rpm包的方式安装mysql,对于centos官方实际推荐使用yum进行安装,下载安装的方式主要用于内网服务器不能连接外网yum源的情况. 下载包 首先根据centos版本在mysq ...

  5. MySQL在linux上的rpm包方式安装方法

    1.下载上传mysql server和client rpm包: [root@faspdev mnt]# ls MySQL-client-5.5.53-1.el6.x86_64.rpm MySQL-se ...

  6. MySQL使用RPM包方式安装

        CentOS7安装MySQL的方法之RPM包方式        

  7. 制做rpm包工具fpm安装

    安装ruby模块 [root@c01 ~]# yum install ruby rubygems ruby-devel -y # 查看当前使用的rubygems仓库 [root@c01 ~]# gem ...

  8. zabbix安装及配置(rpm包安装mysql,php,apache,zabbix)

    zabbix安装及配置 一.安装mysql.php.apache.zabbix 安装环境: 操作系统:rhel6.3-x86-64  mysql:5.6.23   --官网下载rpm包安装php:5. ...

  9. FPM定制RPM包实践

    1.1 快速部署方案 ✔ 问题:当领导给你 100 台已经安装好系统的服务器,然后让优化,让你提出一个快速部署方案. 解答: 1.tar 打包 先编译安装 打包-->分发-->解包(比如 ...

随机推荐

  1. django之环境变量配置

    1.配置python变量环境,C:\Python27\;C:\Python27\Scripts\ 2.配置django变量环境,C:\Python34\Lib\site-packages\Django ...

  2. centos-iso介绍

    极简主义-Linu/Gnu-Linux //流行版本 http://archive.kernel.org/    #做rsync //centos-iso介绍 http://archive.kerne ...

  3. Ubuntu18.04, WPS表格生成中文大写数字的script

    =IF(ROUND(J9,2)<0,"无效数值",IF(ROUND(J9,2)=0,"零",IF(ROUND(J9,2)<1,"" ...

  4. Ubuntu x86-64汇编(4) 数值操作指令

    整数乘法指令 Integer Multiplication 对于有符号数的乘法有特殊的规则, 因此无符号数乘法和有符号数乘法对应着不同的指令mul和imul. 乘法会产生两倍尺寸的数值结果, 即两个n ...

  5. Windows开发进阶之VC++中如何实现对话框的界面重绘

    技术:Windows 系统+Visual studio 2008   概述 应用程序界面是用户与应用程序之间的交互的桥梁和媒介,用户界面是应用程序中最重要的组成部分,也是最为直观的视觉体现.对用户而言 ...

  6. 实现外卖选餐时两级 tableView 联动效果

    最近实现了下饿了么中选餐时两级tableView联动效果,先上效果图,大家感受一下: 下面说下具体实现步骤: 首先分解一下,实现这个需求主要是两点,一是点击左边tableView,同时滚动右边tabl ...

  7. nginx 实现valid_referer全面解析

    先来补充点知识,然后在进行讲解. 先看下两种HTTP head 一个是直接输入网址打开的head,另一个是通过搜索引擎打开的网址head 一:直接输入网址打开的 (Request-Line)  GET ...

  8. Hadoop学习:Map/Reduce初探与小Demo实现

    原文地址:https://blog.csdn.net/liyong199012/article/details/25423221 一.    概念知识介绍 Hadoop MapReduce是一个用于处 ...

  9. OpenCV 学习笔记03 直线和圆检测

    检测边缘和轮廓不仅重要,还经常用到,它们也是构成其他复杂操作的基础. 直线和形状检测与边缘和轮廓检测有密切的关系. 霍夫hough 变换是直线和形状检测背后的理论基础.霍夫变化是基于极坐标和向量开展的 ...

  10. python学习笔记——爬虫学习中的重要库urllib

    1 urllib概述 1.1 urllib库中的模块类型 urllib是python内置的http请求库 其提供了如下功能: (1)error 异常处理模块 (2)parse url解析模块 (3)r ...