#! /usr/bin/bash
read -p "请输入你要安装的数据库版本 mysql-" Mysql_version
echo "您要安装的版本:mysql-$Mysql_version"
cd /opt
yum install -y wget
#echo "您要安装的版本:mysql-$version"
echo -e "\033[37;31;5m您要安装的数据库版本为 mysql-$Mysql_version\033[39;49;0m"
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-${Mysql_version}-el7-x86_64.tar
#判断包是否拉取成功,成功返回0,执行安装
if [ $? -eq 0 ]
then
#首先移除历史环境,否则影响mysqld的安装
yum remove mariadb-libs -y
#安装环境,否则mysql输入显示error while loading shared libraries: libncurses.so.5: cannot open shared object file
yum install libncurses* -y
#创建用户和组、数据储存目录、日志目录、binlog日志目录
useradd mysql -s /sbin/nologin && mkdir -p /data/mysqldata && mkdir -p /var/log/mysql && mkdir -p /data/binlog
#修改所属用户和组
chown mysql:mysql -R /data/binlog
chown mysql:mysql -R /data/mysqldata
chown mysql:mysql -R /var/log/mysql
#解压
tar -xvf mysql-${Mysql_version}-el7-x86_64.tar
tar -xvf mysql-${Mysql_version}-el7-x86_64.tar.gz
#解压mysql-5.7.35-el7-x86_64.tar后得到一个目录,将此目录移动到/usr/local/下,并命名为mysql
mv mysql-${Mysql_version}-el7-x86_64 /usr/local/mysql
#修改所属用户和组为mysql
chown mysql:mysql -R /usr/local/mysql
##初始化数据库(不生成临时密码)
/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysqldata
#配置文件 /etc/my.cnf
cat >/etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysqldata
#注意id和主库不能一样
server_id=6
log-error=/var/log/mysql/error.log
pid-file=/data/mysqldata/mysql.pid
socket=/tmp/mysql.sock
port=3306
#主库开binlog
log_bin=/data/binlog/mysql-bin
EOF
##启动mysql服务
/usr/local/mysql/support-files/./mysql.server start
##复制启动脚本生产系统命令,并添加到systemctl管理
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#做一个软连接,LINUX默认命令放在/usr/bin下,不做每次都要用绝对路径使用mysql命令
ln -s /usr/local/mysql/bin/mysql /usr/bin
else
echo -e "\033[37;31;5m获取安装包出错,请确认您的版本号填写是否正确\033[39;49;0m"
fi
mysql指定版本自动安装脚本
最新推荐文章于 2023-07-21 14:57:59 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)