51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1617|回复: 13
打印 上一主题 下一主题

写个简单linux脚本自动安装卸载mysql

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-8-24 11:50:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在讲测试过程中适合做自动化操作的阶段时,我们说测试环境搭建也可以考虑自动化,给大家举个简单例子,linux环境下的mysql的自动安装卸载,vi myfile

#!/bin/sh

echo "begin to uninstall mysql"
rpm -e MySQL-server-community-5.0.37-0.rhel4.i386
rpm -e MySQL-client-community-5.0.37-0.rhel4.i386
rpm -e MySQL-devel-community-5.0.37-0.rhel4.i386
echo "uninstall successful"

echo "begin to install mysql"
rpm -ivh MySQL-server-community-5.0.37-0.rhel4.i386.rpm
rpm -ivh MySQL-client-community-5.0.37-0.rhel4.i386.rpm
rpm -ivh MySQL-devel-community-5.0.37-0.rhel4.i386.rpm
echo "install successful"


以上语句放在某个文件中,将该文件权限修改成可执行
执行./myfile
然后输入mysql进行验证

[ 本帖最后由 thedaythegirl 于 2007-8-24 11:59 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-8-24 19:07:18 | 只看该作者
Good idea!sdlkfj3
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-8-24 20:59:49 | 只看该作者
老师:
      #!/bin/sh只是起到注释作用吗?用shell语言编写的脚本都可以写上吗?
       sh和bsh文件一样吗?老师上课的时候后来写的是bsh。
       卸载时执行了rm -rf /var/lib/mysql后再安装,要重启才能使用mysql。如果卸载后重新安装的是同一个版本是不是就不用执行这条命令了。

[ 本帖最后由 linwenyan 于 2007-8-24 21:00 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-8-26 05:26:22 | 只看该作者
原帖由 linwenyan 于 2007-8-24 20:59 发表
老师:
      #!/bin/sh只是起到注释作用吗?用shell语言编写的脚本都可以写上吗?
       sh和bsh文件一样吗?老师上课的时候后来写的是bsh。
         卸载时执行了rm -rf /var/lib/mysql后再安装,要重启才能使用mysql。如果卸载后重新安装的是同一个版本是不是就不用执行这条命令了。



1 #!开头的东西不是注释,该行一般写在shell程序源代码的第一行,作用是制定该shell的解释器
2 sh和bsh是两种不同的shell,sh是Bourne shell,bsh是beanshell,不过linux下常用的还是sh和bash两种shell。
3 rm -rf /var/lib/mysql是强行删除/var/lib/mysql目录以及其子目录和子目录里面的所有文件,慎用 rm的rf参数哦:)。mysql安装好后一般直接打开mysql的运行脚本或者以服务方式开启mysql就可以了。


sdlkfj1 写的不对的地方还望老师纠正和补充

[ 本帖最后由 yang119345 于 2007-8-26 05:29 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-8-26 11:00:31 | 只看该作者
原帖由 yang119345 于 2007-8-26 05:26 发表



1 #!开头的东西不是注释,该行一般写在shell程序源代码的第一行,作用是制定该shell的解释器
2 sh和bsh是两种不同的shell,sh是Bourne shell,bsh是beanshell,不过linux下常用的还是sh和bash两种shell。 ...


sdlkfj2 谢谢!可是我把#!/bin/sh 去掉以后脚本同样可以运行,结果也一样啊。

[ 本帖最后由 linwenyan 于 2007-8-26 11:34 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-8-26 16:27:32 | 只看该作者
原帖由 linwenyan 于 2007-8-26 11:00 发表


sdlkfj2 谢谢!可是我把#!/bin/sh 去掉以后脚本同样可以运行,结果也一样啊。



当前用户可能就是这个shell,还有可能这个shell脚本体现不出shell之间的差异,有些shell之间大部分是一样的。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-8-26 17:39:47 | 只看该作者
谢谢!sdlkfj2
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2007-8-27 12:23:54 | 只看该作者
周末重装了机器,没有看到帖子,呵呵

linux文件中的#是表示注释的意思
但#! 用法不表示注释,用来通知系统使用什莫类型的shell解释器
我们使用的linux默认的shell是bash,可以用命令echo $SHELL查看
没有#!/bin/bash   系统也会按照这个默认得shell类型来解释执行这个文件,但建议养成写这句话的习惯,不同的shell类型规则有一点不一样,如果当前的默认shell类型修改成别的,而你的可执行文件必须通过bash来解释的话,你就不得不加上这句话。
sh 是bounre shell,在有些unix系统上,也会用bsh这个简写,我们以前常写这个,这也是为什莫我在黑板上写这个的原因,呵呵
bash 是bounre Again shell
在咱们的linux上,你就用#!/bin/sh好了
以上脚本执行后,mysql和你手工安装的效果是一样的。
有问题的话,把你的操作过程和脚本一起发给我。

[ 本帖最后由 thedaythegirl 于 2007-8-27 12:25 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2007-8-27 21:27:30 | 只看该作者
知道了,谢谢老师。sdlkfj2
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2007-8-28 11:20:45 | 只看该作者
原帖由 linwenyan 于 2007-8-24 20:59 发表
老师:
      #!/bin/sh只是起到注释作用吗?用shell语言编写的脚本都可以写上吗?
       sh和bsh文件一样吗?老师上课的时候后来写的是bsh。
       卸载时执行了rm -rf /var/lib/mysql后再安装,要重启才 ...


#!/bin/sh的作用或含义是指该shell脚本是由/bin/sh这个shell去解释执行的,如果你想换其他的shell去解释执行,那就相应的写其他的shell的名字即可
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2007-8-28 11:21:30 | 只看该作者
原帖由 yang119345 于 2007-8-26 05:26 发表



1 #!开头的东西不是注释,该行一般写在shell程序源代码的第一行,作用是制定该shell的解释器
2 sh和bsh是两种不同的shell,sh是Bourne shell,bsh是beanshell,不过linux下常用的还是sh和bash两种shell。 ...



楼上的,是"指定",不是"制定"
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2007-8-28 11:24:08 | 只看该作者
在root用户权限下,敲如下的命令  #echo $SHELL,列出当前系统可用的shell
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2007-8-29 13:07:45 | 只看该作者
终于找到了,不容易啊,
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2007-8-29 23:57:48 | 只看该作者
原帖由 red-hat 于 2007-8-28 11:21 发表



楼上的,是"指定",不是"制定"






这个纯粹打字失误,呵呵。谢谢指出
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-17 22:41 , Processed in 0.079697 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表