MySQL一键安装Shell脚本的实现

 更新时间:2023年01月08日 08:36:55   作者:清梦清河  
本文主要介绍了MySQL一键安装Shell脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、脚本说明

1、linux系统版本

EL6, EL7, EL8, and EL9-based platforms (for example, the corresponding versions of Oracle Linux, Red Hat Enterprise Linux, and CentOS),本脚本使用的是CentOS7。

2、MySQL版本

此脚本安装的是MySQL57,如果需要使用8.X版本的,只需在配置yum源时将57改为80即可

3、运行方式

此脚本的好处便是能够使用一条命令即可安装完成MySQL
脚本直接使用bash 脚本名称或者sh 脚本名称即可运行,如果安装成功则等待设置MySQL密码即可。

二、脚本内容

#!/bin/bash

# 配置mysql yum源
wget https://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
rpm -ivh mysql57-community-release-el7-7.noarch.rpm

# 更新GPG验证密钥,并安装mysql,如果不更新密钥,安装则会失败
# 如果不更新最后两行可能报以下错误
# Failing package is: mysql-community-client-5.7.38-1.el7.x86_64
# GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
yum install mysql-server -y

# 启动mysql
echo '正在启动MySQL,请稍等......'
systemctl start mysqld.service
if [ $? -ne 0 ];then
   echo 'MySQL启动失败!!!'
   exit
else
   echo 'MySQL启动成功!!!'
   echo '===================================='
fi


# 获取初始密码
initpasswd=`cat /var/log/mysqld.log | grep password | awk '{print $NF}'`
echo "初始密码为:${initpasswd}"

# 用户设置密码
flag=1
while [ $flag -eq 1 ]
do
    read -p "请输入新密码:"  newpasswd
    read -p "请确认密码:"  secondpasswd
    if [ $newpasswd -eq $secondpasswd ]
    then
    flag=2
    else
    echo "两次密码不一致,请重新输入"
    echo "===================================="
    fi
done

echo "设置的新密码为:${newpasswd}"

mysql --connect-expired-password -uroot -p"${initpasswd}" -e "set global validate_password_policy=0;set global validate_password_length=1;alter user 'root'@'localhost' identified by '${newpasswd}';"

if [ $? -ne 0 ];then
   echo '新密码设置失败!!!'
   exit
else
   echo '===================================='
   echo "新密码设置成功!,新密码为:${newpasswd}"
   echo '===================================='
fi

echo "正在开启远程登录......"
mysql --connect-expired-password -uroot -p"${newpasswd}" -e "update mysql.user set Host = '%' where Host = 'localhost' and User='root';flush privileges;"
if [ $? -ne 0 ];then
   echo '远程登录开启失败!!!'
   exit
else
   echo '===================================='
   echo '远程登录开启成功!'
   echo '===================================='
fi

到此这篇关于MySQL一键安装Shell脚本的实现的文章就介绍到这了,更多相关MySQL安装Shell脚本内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于mssql导mysql遇到的问题

    基于mssql导mysql遇到的问题

    本篇文章是对mssql导mysql遇到的问题,进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • mysql 前几条记录语句之(limit)

    mysql 前几条记录语句之(limit)

    mysql 的 top 方法 limit,用来获取数据库查询的前几天记录。
    2009-11-11
  • mysql 5.7.21 解压版通过历史data目录恢复数据的教程图解

    mysql 5.7.21 解压版通过历史data目录恢复数据的教程图解

    本文通过图文并茂的形式给大家介绍了mysql 5.7.21 解压版,通过历史data目录恢复数据的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • mac下安装mysql忘记密码的修改方法

    mac下安装mysql忘记密码的修改方法

    这篇文章主要介绍了mac下安装mysql忘记密码的修改方法,需要的朋友可以参考下
    2017-06-06
  • mysql 8.0.22 下载安装配置方法图文教程

    mysql 8.0.22 下载安装配置方法图文教程

    这篇文章主要为大家详细介绍了mysql 8.0.22 下载安装配置方法图文教程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • DBeaver连接MySQL提示"Public Key Retrieval is not allowed"问题解决方式

    DBeaver连接MySQL提示"Public Key Retrieval is

    dbeaver数据库连接工具,可以支持几乎所有的主流数据库.mysql,oracle.sqlserver,db2 等等,这篇文章主要给大家介绍了关于DBeaver连接MySQL提示"Public Key Retrieval is not allowed"问题的解决方式,需要的朋友可以参考下
    2023-10-10
  • SQL实现LeetCode(197.上升温度)

    SQL实现LeetCode(197.上升温度)

    这篇文章主要介绍了SQL实现LeetCode(197.上升温度),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • MySQL curdate()函数的实例详解

    MySQL curdate()函数的实例详解

    这篇文章主要介绍了MySQL curdate()函数的实例详解的相关资料,希望通过本文能帮助到大家理解应用MysqL curdate()的使用方法,需要的朋友可以参考下
    2017-09-09
  • MySQL 5.6主从报错的实战记录

    MySQL 5.6主从报错的实战记录

    这篇文章主要给大家介绍了关于MySQL 5.6主从报错的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • MySQL连接抛出Authentication Failed错误的分析与解决思路

    MySQL连接抛出Authentication Failed错误的分析与解决思路

    这篇文章主要给大家介绍了关于MySQL连接抛出Authentication Failed错误的分析与解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-10-10

最新评论