增加用户:

# 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. 远程过程调用协议(RPC)

      RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.RPC协议假定某些传输协议的 ...

  2. Spring Cloud环境搭建: Eureka Server

    项目目录结构, 总共三个文件 ├── pom.xml └── src ├── main │   ├── java │   │   └── com │   │   └── rockbb │   │   ...

  3. 一颗可靠的时间胶囊:苹果AirPort Time Capsule测评

    http://sspai.com/24181/ 如何从 Time Machine 备份恢复数据? AirPort Time Capsule能轻松完成备份,自然也少不了方便地恢复备份.一般常见的恢复备份 ...

  4. kubelet Pod status的状态分析

    CrashLoopBackOff: 容器退出,kubelet正在将它重启 InvalidImageName: 无法解析镜像名称 ImageInspectError: 无法校验镜像 ErrImageNe ...

  5. Swift 导航栏设置图片点击事件,图片蓝色的解决方案

    如果导航栏想做一个点击事件,正好是一个图片 我们可以直接这样: self.navigationItem.rightBarButtonItem = UIBarButtonItem(image: UIIm ...

  6. memcached完全剖析--1. memcached的基础

    翻译一篇技术评论社的文章,是讲memcached的连载.fcicq同学说这个东西很有用,希望大家喜欢. 发表日:2008/7/2 作者:长野雅广(Masahiro Nagano) 原文链接:http: ...

  7. Linux-非结构化数据同步-Linux下Rsync+Rsync实现非结构化增量差异数据的同步2

    说明: 操作系统:CentOS 5.X 源服务器:192.168.21.129 目标服务器:192.168.21.127,192.168.21.128 目的:把源服务器上/home/www.osyun ...

  8. “医疗信息化行业之中的联发科”- 我们在医疗行业中的定位及目标 想做一个面对中小企业的专业上游软件供应商 台湾联发科技颠覆掉的是一个封闭的手机产业系统 解决方案,即AgileHIS.NET数字化医院基础方案

    “医疗信息化行业之中的联发科”- 我们在医疗行业中的定位及目标   我们做中国医疗信息化行业之中的联发科 ---我们在医疗行业中的定位及目标 从我个人来讲,我从2001年到现在这10年之间基本上一直在 ...

  9. Mac 安装任何来源的文件

    1.Mac 安装任何来源的文件 安装软件提示文件损坏怎么处理,打开 DMG 文件提示损坏怎么处理,来自不信任的开发者怎么处理,macOS Sierra 如何安装任何来源的文件. 非常肯定的告诉您不是我 ...

  10. 【Algorithm】插入排序

    一. 算法描述 插入排序具体算法描述如下: 从第一个元素开始,该元素可以认为已经被排序 取出下一个元素,在已经排序的元素序列中从后向前扫描 如果该元素(已排序)大于新元素,将该元素移到下一位置 重复步 ...