Centos5.8上面用Shell脚本一键安装mysql5.5.25源码包

php中文网
发布: 2016-06-07 17:40:01
原创
951人浏览过

最近在研究mysql集群,至少要安装部署2台或者多台mysql数据库,操作起来即麻烦又很耗时,今天根据安装步骤写了一个Shell脚本,只需执行以下脚本就可以快速安装my

     最近在研究mysql集群,至少要安装部署2台或者多台mysql数据库,操作起来即麻烦又很耗时,今天根据安装步骤写了一个Shell脚本,美国服务器,只需执 行以下脚本就可以快速安装mysql数据库,对初学者或者想学习mysql集群的朋友非常方便,即省时,又省力。

操作系统及其mysql配置文件说明:
Linux系统:Centos5.8
mysql:mysql-5.5.25tar.gz源码包
安装目录:/usr/local/mysql/
数据目录:/data/mysql/3306/data/
二进制日志:/data/msyql/3306/binlog/
relay日志:/data/mysql/3306/relaylog/
配置文件:/data/mysql/3306/my.cnf
mysql.sock文件:/data/mysql/3306/mysql.sock

下面是我编写的一键安装mysql数据库的脚本,如有不对的地方请多多指教。
[root@DB148 sh]# cat mysql_install_new_version.sh
#!/bin/bash
#创作日期:2012.6.16
#作者:张世锋
#Mysql install directory and configuration files.
MYSQL_DIR="/data/software"
DATA_DIR="/data/mysql/3306/data"
BASE_DIR="/usr/local/mysql"

echo "please input mysql version:"
read  VERSION

echo "Your mysql version is mysql-$VERSION.tar.gz"

if [ -e "$MYSQL_DIR/mysql-$VERSION.tar.gz" ]
then
echo "Please waitting..."
sleep 3
#Install mysql package dependent.
yum -y install gcc gcc-c++ gcc-g77 autoconf automake openssl zlib* fiex** libxml* \
ncurses-devel libmcrypt* libtool-ltdl-devel* &&
#Install cmake.
echo "The system is be installed cmake,please waitting..."
sleep 3
tar -zxvf $MYSQL_DIR/cmake-2.8.8.tar.gz -C $MYSQL_DIR &&
cd $MYSQL_DIR/cmake-2.8.8 &&
./configure \
--prefix=/usr/local/cmake &&
make && make install &&
#creating mysql account and group.
/usr/sbin/groupadd mysql &&
/usr/sbin/useradd -s /sbin/nologin -g mysql -M mysql &&
#Install mysql.
tar -zxvf $MYSQL_DIR/mysql-$VERSION.tar.gz -C $MYSQL_DIR
cd $MYSQL_DIR/mysql-$VERSION
echo "PATH=$PATH:/usr/local/cmake/bin" >> /etc/profile && source /etc/profile
cmake \
$MYSQL_DIR/mysql-$VERSION
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DYSQL_TCP_PORT=3306 \
-DMYSQL_DATADIR=$DATA_DIR \
-DMYSQL_UNIX_ADDR=/data/mysql/3306/mysql.sock \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_DEBUG=0
make && make install &&

mkdir -p $DATA_DIR
mkdir -p `dirname $DATA_DIR`/binlog
mkdir -p `dirname $DATA_DIR`/relaylog
cp $MYSQL_DIR/mysql-$VERSION/support-files/my-small.cnf.sh `dirname $DATA_DIR`/my.cnf
cp $MYSQL_DIR/mysql-$VERSION/support-files/mysql.server.sh /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
sed -i 's/^basedir=/basedir=\/usr\/local\/mysql/' /etc/init.d/mysqld
sed -i 's/^datadir=/datadir=\/data\/mysql\/3306/' /etc/init.d/mysqld
sed -i 's/`@HOSTNAME@`/DB148/' /etc/init.d/mysqld
sh /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=$DATA_DIR  &&
/etc/init.d/mysqld start
else
echo "Your input mysql version  is not in $MYSQL_DIR"
fi 
   
下面我们测试这个脚本是否能正常执行。

    首先新建目录/data/software,在mysql官方网站下载mysql-5.5.25.tar.gz和cmake源码包。

    接下来我们执行mysql安装脚本,香港空间,这里要手动输入mysql版本号码5.5.25,然后脚本会自动安装,出去透透风,网站空间,休息休息。

    最后查看一下mysql数据库的安装是否OK,通过查看mysql数据库启动文件,端口,数据文件等等都是正常的。

JTBC网站内容管理系统5.0.3.1
JTBC网站内容管理系统5.0.3.1

JTBC CMS(5.0) 是一款基于PHP和MySQL的内容管理系统原生全栈开发框架,开源协议为AGPLv3,没有任何附加条款。系统可以通过命令行一键安装,源码方面不基于任何第三方框架,不使用任何脚手架,仅依赖一些常见的第三方类库如图表组件等,您只需要了解最基本的前端知识就能很敏捷的进行二次开发,同时我们对于常见的前端功能做了Web Component方式的封装,即便是您仅了解HTML/CSS也

JTBC网站内容管理系统5.0.3.1 3
查看详情 JTBC网站内容管理系统5.0.3.1

    总结:上面的脚本里面都做了简单的注释,下面着重说明一下在安装过程中容易出错的地方。
     1)echo "PATH=$PATH:/usr/local/cmake/bin" >> /etc/profile && source /etc/profile 脚本里面的这行代是修改环境变量,否则在编译安装mysql数据库的时候出错提示说找不到cmake命令。
     2)sed -i 's/^basedir=/basedir=\/usr\/local\/mysql/' /etc/init.d/mysqld和  sed -i 's/^datadir=/datadir=\/data\/mysql\/3306/' /etc/init.d/mysqld 脚本里面的这两行在mysql启动文件指定mysql数据库的安装目录和数据目录存放目录。
     3)sed -i 's/`@HOSTNAME@`/DB148/' /etc/init.d/mysqld 脚本的这行是用mysql服务器的主机名替换掉`@HOSTNAME@`,否则在启动数据库的时候会提示下面错误,
/etc/init.d/mysqld: line 263: @HOSTNAME@: command not found,但数据库能正常启动。



 

本文出自 “朴实的追梦者” 博客,请务必保留此出处

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号