现在解压MySQL二进制包,稍作配置,就能用了,安装速度快,安装来练习最好不过了,哈哈

该脚本只是安装二进制的MySQL包,my.cnf只修改了简单的选项,没有过多进行设置,若朋友们用我的脚本安装作为线上环境,需要在变量处修改为自己想要的内容即可,my.cnf你们要根据自己生产环境情况进行配置,安装包自己从官网下载,现在好像过墙才能下载了

官网:http://dev.mysql.com/downloads/mysql/

#!/bin/bash
#-------------------------------
#this install just for test ues
#write on --
#write by xuanzhi
#------------------------------ #定义变量
soft_path=/usr/local/src
mysql_pack=mysql-5.5.-linux2.-x86_64.tar.gz
mysql_version=`echo "mysql-5.5.40-linux2.6-x86_64.tar.gz"|cut -d - -f1,`
mysql_user=mysql2
mysql_port=
mysql_passwd=
install_path=/usr/local
mysql_path=/usr/local/${mysql_version}
mysql_data_path=/data/${mysql_version}/data #创建用户、赋权、安装
groupadd ${mysql_user}
if [ $? -ne ]
then
echo "this user ${mysql_user} is exist!!"
exit
fi
useradd -r -g ${mysql_user} ${mysql_user} cd ${soft_path}
if [ ! -e ${mysql_pack} ]
then
echo "install pack is not exist!!"
exit
fi
tar zxvf ${mysql_pack} -C ${install_path}
cd ${install_path} && mv ${mysql_version}-* ${mysql_version}
chown -R root:${mysql_user} ${mysql_path}
cd ${mysql_path} && cp support-files/my-large.cnf ${mysql_path}/my.cnf
mkdir -p /data/${mysql_version}
chown -R ${mysql_user}:${mysql_user} /data/${mysql_version} #修改my.cnf

sed -i "/3306/{x;s/^/./;/^.\{2\}$/{x;s/3306/${mysql_port}/;b};x}" ${mysql_path}/my.cnf
  sed -i "/socket/{x;s/^/./;/^.\{2\}$/{x;s#/tmp/mysql.sock#/data/${mysql_version}/mysql.sock#;b};x}" ${mysql_path}/my.cnf
  sed -i "/\/data\/${mysql_version}\/mysql.sock/a\datadir = ${mysql_data_path}" ${mysql_path}/my.cnf
  sed -i "/datadir/a\basedir = ${mysql_path}" ${mysql_path}/my.cnf
  sed -i "/basedir/a\user = ${mysql_user}" ${mysql_path}/my.cnf
  sed -i "/innodb_buffer_pool_size/s/^#//" ${mysql_path}/my.cnf


#初始化
cd ${mysql_path}
yum install libaio -y
scripts/mysql_install_db --user=${mysql_user} --defaults-file=${mysql_path}/my.cnf if [ $? -ne ]
then
echo -e "\e[1;31m[MySQL install init failure...]\e[0m"
exit
fi #添加启动关闭脚本
cat >>shutdown_mysql.sh<<EOF
#!/bin/bash ${mysql_path}/bin/mysqladmin --defaults-file=${mysql_path}/my.cnf -uroot -p${mysql_passwd} -S /data/${mysql_version}/mysql.sock shutdown
EOF cat >>start_mysql.sh<<EOF
#! /bin/sh nohup ${mysql_path}/bin/mysqld_safe --defaults-file=${mysql_path}/my.cnf >> ${mysql_path}/start_stop.log >& &
EOF #启动MySQL
chmod +x shutdown_mysql.sh start_mysql.sh && sh start_mysql.sh
sleep
ps -aux |grep -v grep |grep ${mysql_port} &> /dev/null
if [ $? -ne ]
then
echo -e "\e[1;31m[MySQL start failure...]\e[0m"
exit
else
echo -e "\e[1;32m[MySQL start secessful]\e[0m"
fi
#修改密码
${mysql_path}/bin/mysqladmin -uroot password "${mysql_passwd}" -S /data/${mysql_version}/mysql.sock

若脚本有什么问题,希望大家能指出,让我知道更多自己的不足,谢谢^.^

作者:陆炫志

出处:xuanzhi的博客 http://www.cnblogs.com/xuanzhi201111

您的支持是对博主最大的鼓励,感谢您的认真阅读。本文版权归作者所有,欢迎转载,但请保留该声明。

shell安装MySQL二进制包的更多相关文章

  1. red hat安装mysql二进制包

    数据包命名格式解释 mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz 黑色粗体表示为包名称 蓝色表示linux系统二进制包 红色表示构架     1.上传mysql- ...

  2. MySQL二进制包安装及启动问题排查

    环境部署:VMware10.0+CentOS6.9(64位)+MySQL5.7.19(64位)一.操作系统调整 # 更改时区 .先查看时区 [root@localhost ~]# date -R Tu ...

  3. mysql二进制包安装与配置实战记录

    导读 一般中小型网站的开发都选择 MySQL 作为网站数据库,由于其社区版的性能卓越,搭配 PHP .Linux和 Apache 可组成良好的开发环境,经过多年的web技术发展,在业内被广泛使用的一种 ...

  4. MySQL二进制包安装

    mysql的安装有多种方法,这里就介绍一下二进制包安装. [root@node1 ~]# tar xvf mysql-5.7.27-linux-glibc2.12-x86_64.tar [root@n ...

  5. ubuntu下mysql二进制包安装

    1.下载对应二进制包 cd /usr/local/srcsudo wget http://dev.mysql.com/downloads/file/?id=465030 2.解压并放在/usr/loc ...

  6. MYSQL三种安装方式--二进制包安装

    1. 把二进制包下载到/usr/local/src下 2. 如果是tar.gz包,则使用tar zxvf 进行解压 如果是tar包,则可以使用tar xvf 进行解压 3. $ mv mysql-5. ...

  7. mysql安装linux_二进制包安装

    1.下载(本地下载www.mysql.com ----->DOWNlOADS------>Archives----->MySQL Community Server---->Li ...

  8. Linux_CentOS软件安装调试 源代码包编译安装和 二进制包配置

    Linux 下源代码(C 语言)如何编译(安装) 1. 先安装源代码编译的软件 gcc,make,openssl 如下: yum install -y gcc make gcc-c++ openssl ...

  9. Mac Pro 解压安装MySQL二进制分发版 mysql-5.6.30-osx10.11-x86_64.tar.gz(不是dmg的)

    没有mac的root密码,当前用户有sudo权限,所以想以root身份执行的命令都加了sudo. 是否存在 _mysql 用户和用户组,并查看用户 _mysql 是不是用户组 _mysql 的成员. ...

随机推荐

  1. C#基础之yield与Singleton

    1.实例解析yiled的作用 最近参加java笔试题第一次见到yield这个关键字,既然遇见了那肯定要掌握,下面是C#中关于yield关键字的总结.yield这个关键字作用于迭代器块中,其最本质的功能 ...

  2. 将Mininet与真实网络相连接

    原文发表在我的博客主页,转载请注明出处 前言 Mininet是SDN网络仿真的一大利器,在小规模网络模拟使用上独领风骚,其开源性允许使用者按照自己的需求修改源码,得到想要的数据,其提供了多个函数用来满 ...

  3. [网站公告]23:00-05:00阿里云SLB升级会造成4-8次每次10秒的闪断

    大家好,阿里云将于今天夜里(7月29日23:00-7月30日05:00)对负载均衡服务(SLB)进行升级操作,升级期间我们使用的SLB实例会有4-8次的闪断,每次闪断时间10秒左右.闪断期间会造成网站 ...

  4. 用一个下午从零开始搭建一个基础lbs查询服务

    背景 现在做一个sns如果没有附近的功能,那就是残缺的.网上也有很多现成的lbs服务,封装的很完整了. 我首先用了下百度lbs云,但是有点不适合自己的需要,因此考虑用mongodb建一个简单的lbs服 ...

  5. 基于微信红包插件的原理实现android任何APP自动发送评论(已开源)

    背景 地址:https://github.com/huijimuhe/postman 核心就是android的AccessibilityService,回复功能api需要23以上版本才行. 其实很像在 ...

  6. 一句话概括下spring框架及spring cloud框架主要组件

    作为java的屌丝,基本上跟上spring屌丝的步伐,也就跟上了主流技术.spring 顶级项目:Spring IO platform:用于系统部署,是可集成的,构建现代化应用的版本平台,具体来说当你 ...

  7. [AaronYang]C#人爱学不学[3]

    本文章不适合入门,只适合有一定基础的人看.我更相信知识细节见高低,我是从4.0开始学的,终于有时间系统的学习C#5.0,是5.0中的知识,会特殊标记下.但写的内容也可能含有其他版本framework的 ...

  8. AngularJs-指令1

    前言: 前面写的有些乱,并且有些罗嗦,以后会注意的.希望我写的文章能帮助大家. 1,什么是指令 简单的说,指令是angularjs在html页面中建立一套自己能识别的标签元素.属性.类和注释,用来达到 ...

  9. Error: java.lang.UnsatisfiedLinkError: no ntvinv in java.library.path

    Error Message When compiling or executing a Java application that uses the ArcObjects Java API, the ...

  10. 【BZOJ 3282】Tree Link Cut Tree模板题

    知道了为什么要换根(changeroot),access后为什么有时要splay,以及LCT的其他操作,算是比较全面的啦吧,,, 现在才知道这些,,,真心弱,,, #include<cstdio ...