可以自动安装mysql数据库的一个shell脚本
一个可以自动安装mysql的shell脚本。
本文分享一例在linux操作系统中,自动安装mysql数据库的shell脚本代码。
有点小缺点,如下:
还没写完,是写给集群安装的,配置也没有完成。其它机器打算用expect来执行sh,也没有写。
不过,这不是重点,大家可以很容易就能完善。
代码:
#!/bin/bash
#mysql安装(集群)
main_path=/root/mysql/
install_name=mysql-max-5.0.24-linux-i686.tar.gz
install_path=/usr/local/mysql/
env_fun() #环境
{
echo "-------检测本机环境,请稍等-------"
username=`cat /etc/passwd|grep mysql|cut -c 1-5`
if [ $username = "mysql" ];then
echo "用户检测:mysql已存在"
return 10
else
echo "用户检测:mysql用户不存在,添加"
groupadd mysql
useradd mysql -g mysql
return 12
fi
}
#判断mysql是否安装(rpm、source)
check_fun()
{ # www.jbxue.com
rpm_name=`rpm -aq |grep mysql-server`
if [ ! $rpm_name ];then
echo "开始检测源码包是否安装,请稍等......"
if [ -d $install_path ];then
echo "源码:$install_path目录已存在,退出本次安装."
exit 0
else
echo "本机未安装任何mysql程序,将为您开始安装$install_name.请稍等......"
install_fun
fi
else
echo -n "rpm mysql已安装,是否删除?[yes|no]"
read select
if [ $select = yes ];then
rpm -ev $rpm_name --nodeps
rm -rf /var/log/mysqld.log
check_fun
else
exit 0
fi
fi
}
install_fun() #安装函数
{
cd $main_path
echo "正在解压,请稍等......"
tar zxvf $install_name
echo "建立相应目录"
echo "mkdir -p /usr/local/mysql/"
mkdir -p /usr/local/mysql/
echo "mkdir -p /usr/local/mysql/data/"
mkdir -p /usr/local/mysql/data/
cd mysql-max-5.0.24-linux-i686/bin/
echo "cp ndb_mgm* /usr/local/mysql/"
cp ndb_mgm* /usr/local/mysql/
echo "chown -R mysql:mysql /usr/local/mysql/"
chown -R mysql:mysql /usr/local/mysql/
#配置
}
main()
{
echo "#***********************************#"
echo "# 欢迎使用mysql集群安装脚本 #"
echo "# Copyright 2013 by wanggy #"
echo "#***********************************#"
sleep 3
#开始执行,调用检测函数
env_fun
re=$?
if [ re = 10 ];then
check_fun
else
check_fun
fi
}
main
exit 0
可以自动安装mysql数据库的一个shell脚本的更多相关文章
- linux中备份mysql数据库的一个shell脚本
#!/bin/bash #FileName:select_into_bak.sh #Desc:Use select into outfile to backup db or tables #Creat ...
- .net安装包自动安装Mysql数据库
原文:.net安装包自动安装Mysql数据库 在制作.Net安装包的时候,如果项目有用到数据库,怎么能够把数据库打包安装呢?网上已经有很多自动安装Sql Server数据库的例子,但是自动安装mysq ...
- CentOS6.7下使用非root用户(普通用户)编译安装与配置mysql数据库并使用shell脚本定时任务方式实现mysql数据库服务随机自动启动
CentOS6.7下使用非root用户(普通用户)编译安装与配置mysql数据库并使用shell脚本定时任务方式实现mysql数据库服务随机自动启动1.关于mysql?MySQL是一个关系型数据库管理 ...
- 一个备份MySQL数据库的简单Shell脚本(转)
Shell脚本是我们写不同类型命令的一种脚本,这些命令在这一个文件中就可以执行.我们也可以逐一敲入命令手动执行.如果我们要使用shell脚本就必须在一开始把这些命令写到一个文本文件中,以后就可以随意反 ...
- [转]一个备份MySQL数据库的简单Shell脚本
本文翻译自 iSystemAdmin 的 <A Simple Shell Script to Backup MySQL Database> Shell脚本是我们写不同类型命令的一种脚本,这 ...
- 一个自动备份mysql数据库的bat文件内容
自动备份mysql数据库,并已当前的日期时间为目录 copy过去, xcopy将近15年没有用dos命令,还是这么亲切 另 本方法是备份数据库文件,不是dump导出,然后再计划任务中使用,我用的是wa ...
- Linux下安装MySQL数据库以及用C语言编程存取数据库
ubuntu下安装软件相当简单,一条简单的 apt-get install 就可以解决,相比源码安装方式唯一的缺点就是,你无法自定义软件的安装目录.不过这也不是什么太大的缺点.下面我们就用 apt-g ...
- Linux下自动备份MySQL数据库并上传到远程FTP服务器
Linux下自动备份MySQL数据库并上传到远程FTP服务器且删除指定日期前的备份Shell脚本 说明: 1.备份MySQL数据库存放目录/var/lib/mysql下面的xshelldata数据库 ...
- Windows10系统的Linux子系统中安装MySQL数据库心得
后端开发童鞋们, 自己开发机用的是Windows系统电脑(台式机或笔记本), 而开发的程序和使用的数据库等要运行在Linux服务器上, 这种情况有木有? 提前声明: 本文并不讨论操作系统的比较, 以及 ...
随机推荐
- UITableView实现格瓦拉飞天投票模块
格瓦拉目前来说动画效果确实做的还比较好,虽然不是说很炫但做到精致,这次就模仿了它投票的模块.其实想到要实现它还是有很多方法,不过这次我还是采用了苹果自带控件UITableView简简单单来实现它,再次 ...
- ios开发——笔记篇
:开关 BOOL isopen = !isopen; //View @property (nonatomic, assign) BOOL open;//模型属性 self.group.open = ! ...
- python的内存管理机制 图解+Django Web开发学习笔记
http://www.cnblogs.com/CBDoctor/p/3781078.html http://www.cnblogs.com/vamei/p/3232088.html http://bl ...
- mysql服务器辅助选项
查看控制台命令行前缀 : echo $PS1 ,例如输出 '[\u@\h \w]# 其中,\u是用户名,\h是主机名称: hostname -s 可以查看当前主机名, hostname 'z ...
- 键盘工具栏的快速集成--HcCustomKeyboard
源项目地址:HcCustomKeyboard HcCustomKeyboard是一个键盘工具栏控件: 效果: HcCustomKeyboard使用很方便: 三部: 添加控件->操作处理-> ...
- c++与c不太相同的一些地方2
1.一般全局变量放到cpp 文件里面,而不是.h 里面.要不然容易乱套,这个乱几次就好了,先记住这样一种编码规范. 以为大家都引入就比较麻烦,但是实现起来就只有cpp里面才有.毕竟.h是要被包含的文件 ...
- 4.关于phpstudy for linux 的安装(LNMP)更好的环境请看8.LNMP环境
phpstudy真的很坑爹! 所以我在后面重新写了一个LNMP环境的集成包应用! 首先,我们在自己本地开发的时候一般使用的虚拟机的权限账号都是最高的,也就是我们的root账户 PS:我已经更改镜像源为 ...
- java基础学习总结五(递归算法、冒泡排序、查看生成API)
一:递归算法 概念:自己调用自己的方法 示例代码如下: @Test /** * 递归求和 * 5+4+3+2+1=15 */ public void getSum() { long sum = sum ...
- linux系统安装对硬件有什么要求
Linux系统对你的硬件要求不是很高,你可以参照你的系统上面的参数进行对照,Linux系统的初衷就是以最低的配置完成最高的性能,随意,现在的计算机都可以安装这个系统的,你不要顾虑多了,但是分区你不用系 ...
- Lodash Filter
var persons = [{name:'1',age:'20'}, {name:'2', age:'25'}];_.filter(persons, {'age': '25'}); //return ...