增加用户:

# 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. JAVA识别字符串是数字(英文)还是汉字,web页面进行字符截断的帮助类

    public static void main(String[] args) { //长度是2说明是英文/数字/英文状态下的字符,长度为4说明是汉字/中文状态下的字符 String str = &qu ...

  2. 用Beautiful Soup解析html源码

    #xiaodeng #python3 #用Beautiful Soup解析html源码 html_doc = """ <html> <head> ...

  3. mybatis generator(MyBatis的逆向工程)

    1创建数据表 如图所示:我的是在text数据库中创建了一个Student表,字段有id(int),   name(varchar),     age(int),    score(int) 2创建项目 ...

  4. Photoshop CS6 操作记录

    全局快捷键 橡皮 E 画笔 B 魔棒工具 W 钢笔工具 P 选区工具 M 移动画布 按住Space后鼠标拖动 放大缩小画布 Ctrl+-, Ctrl++ 调出/收回标尺 Ctrl+R 调整画笔大小 [ ...

  5. 如何解决input file 选取相同文件后,change事件不起作用解决方法

    两种方法 1.在你的input所属的form表单reset()就可以了! $("#avatorForm")[0].reset(); 2.设置你的input file value值为 ...

  6. jsp空指针异常

    1.Tomcat启动后访问首页报错 显示JSP 空指针异常 这哥们是因为lib下jar包和Tomcat下的jar包冲突,去掉lib下 servlet-api-2.5.jar 以及jsp-api.jar ...

  7. Hopfield神经网络和TSP问题

    一.TSP问题 旅行商问题,又叫货郎担问题.它是指如下问题:在完全图中寻找一条最短的哈密尔顿回路. 哈密尔顿回路问题:给定一个图,判断图中是否存在哈密尔顿回路. 哈密尔顿回路:寻找一条回路,经过图中所 ...

  8. MySQL备份与还原详细过程示例

    MySQL备份与还原详细过程示例 一.MySQL备份类型 1.热备份.温备份.冷备份 (根据服务器状态) 热备份:读.写不受影响: 温备份:仅可以执行读操作: 冷备份:离线备份:读.写操作均中止: 2 ...

  9. fedora装机后要运行的脚本(原创)

    脚本:sh.sh #!/bin/zsh #安装rpmfusion源 dnf config-manager --add-repo=http://repo.fdzh.org/FZUG/FZUG.repo ...

  10. android 当ListView滚动时自动调用 onCheckedChanged 导致CheckBox 状态不停变化 的解决办法

    今天在做一个含有CheckBox 的ListView时,发现当初始化CheckBox的状态后, 滚动ListView,其中CheckBox 的选中状态不停的发生变化.最后发现原因是 ListView滚 ...