Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7593141
  • 博文数量: 368
  • 博客积分: 9600
  • 博客等级: 上校
  • 技术积分: 18875
  • 用 户 组: 普通用户
  • 注册时间: 2009-01-01 00:00
文章分类

全部博文(368)

文章存档

2017年(9)

2016年(19)

2015年(3)

2014年(6)

2013年(8)

2012年(78)

2011年(66)

2010年(135)

2009年(44)

分类: Mysql/postgreSQL

2012-04-10 15:36:43

    因为经常会涉及到部署mysql到各个环境(正式、性能、测试等),因此将安装步骤写成shell脚本,减少重复的工作   
    下面是一个自动化安装mysql 5.1.63的脚本,贴上来,大家可以下载my.cnf文件解压后和脚本放统一目录下,执行安装脚本就可以了。
做一下备忘,脚本内容如下:

点击(此处)折叠或打开

  1. #!/bin/bash
  2. echo "-----------------------start install mysql----------------------"
  3. yum -y install gcc gcc-c++ ncurses ncurses-devel openssl openssl-devel libtool*
  4. mkdir -p /data/dbdata
  5. if [ `grep "mysql" /etc/passwd | wc -l` -eq 0 ];then
  6. echo "adding user mysql"
  7. /usr/sbin/groupadd mysql
  8. /usr/sbin/useradd -g mysql mysql
  9. else
  10. echo "mysql user is exist"
  11. fi

  12. wget
  13. echo "tar xzvf mysql-5.1.63.tar.gz"
  14. tar xzvf mysql-5.1.63.tar.gz
  15. cd mysql-5.1.63
  16. echo "configuring mysql,please wait-----------------"
  17. ./configure '--prefix=/usr/local/mysql' '--localstatedir=/data/dbdata/' '--with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock' '--with-charset=utf8' '--with-extra-charsets=complex' '--with-pthread' '--enable-thread-safe-client' '--with-ssl' '--with-client-ldflags=-all-static' '--with-mysqld-ldflags=-all-static' '--with-plugins=partition,federated,innobase,csv,blackhole,myisam,innodb_plugin,heap,archive' '--enable-shared' '--enable-assembler'

  18. if [ $? -ne 0 ];then
  19. echo "configure filed ,please check it out!"
  20. exit 1
  21. fi

  22. echo "make mysql, please wait for 20 minutes"
  23. make
  24. if [ $? -ne 0 ];then
  25. echo "make filed ,please check it out!"
  26. exit 1
  27. fi

  28. make install

  29. chown -R mysql:mysql /usr/local/mysql
  30. chown -R mysql.mysql /data/dbdata/

  31. /usr/local/mysql/bin/mysql_install_db --user=mysql

  32. cp ../my.cnf /etc/my.cnf

  33. cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysqld
  34. chkconfig --add mysqld
  35. chkconfig --level 2345 mysqld on

  36. echo "mysql starting"
  37. /etc/rc.d/init.d/mysqld start
  38. if [ $? -ne 0 ];then
  39. echo "mysql start filed ,please check it out!"
  40. else
  41. echo "mysql start successful,congratulations!"
  42. fi

my.cnf的压缩附件如下:
 my.rar  
阅读(12414) | 评论(8) | 转发(3) |
给主人留下些什么吧!~~

飞鸿无痕2012-04-11 14:31:01

godymoon: 弄个绿色的tar包多好,安装时一个解压命令搞定,比执行你的脚本还简单.....
编译好的是根据指定的平台编译的,而每个系统都会有点差异,在系统上编译是按照系统的环境编译的,会更高效更稳定的!

godymoon2012-04-11 13:39:13

弄个绿色的tar包多好,安装时一个解压命令搞定,比执行你的脚本还简单