欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

案例:分布式 LAMP 架构构建 Discuz 论坛(编译和安装) - Mysql 的编译和安装(192.168.10.4 主机)

最编程 2024-04-26 09:14:25
...

脚本如下:

 

#!/bin/bash
#date 2019年12月22日18:08:51
#named:auto_install_mysql
#由于没有下载mysql源码包,所以提前准备好
echo '正在下载资源包...'
yum -y install ncurses-devel gcc gcc-c++ wget make 

read -p '你想要的Cmake版本:' VER
wget https://github.com/Kitware/CMake/releases/download/v$VER/cmake-$VER.tar.gz
tar zxf cmake-$VER.tar.gz -C /usr/src
cd /usr/src/cmake-$VER
echo '正在编译安装...'
./configure &> /dev/null
gmake && gmake install &> /dev/null

#创建mysql的用户和组
groupadd mysql
useradd -M -s /sbin/nologin mysql -g mysql

cd /usr/src
tar zxf /mysql-5.6.36.tar.gz 
cd mysql-5.6.36/
echo '预编译中...'
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all &> /dev/null
echo  '正在编译安装...'
make -j8 && make install -j8 &> /dev/null


echo  '对数据库目录进行授权:'
chown -R mysql:mysql /usr/local/mysql
echo  '建立配置文件:'
rm -rf /etc/my.cnf
cp support-files/my-default.cnf /etc/my.cnf
#echo '安装Perl模块...'
#如果提示初始化数据库失败,自己手动去掉注释,删掉已安装的软件包,再运行一边脚本
#yum -y install perl-Data-Dumper &> /dev/null
echo '初始化数据库...'
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
echo '设置环境变量:'
echo "PATH=$PATH://usr/local/mysql/bin" >> /etc/profile
. /etc/profile
#mysql 的启动和关闭:
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
/etc/init.d/mysqld start

#/etc/init.d/mysqld是一个shell脚本,在启动过程中会调用mysqld_safe脚本,最后调用mysqld服务启动mysql,如下所示.
#$bindir/mysql_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 
netstat -anpt | grep 3306
cat << EOF

****************************************
* Mysql  has been installed successfully. *
****************************************

EOF