【shell案例】CentOS7安装MySQL脚本案例

【shell案例】CentOS7安装MySQL脚本案例前言此脚本为一个学员在工作中遇到在centos7中安装mysql的问题,于是安排一个学员花了15分钟写了一个脚本,可以正常安装使用。mysql的版本为5.7版本此脚本涉及到安装好mysql后,日志中没有临时密码的问题,所以该学员使用了破解mysql密码登陆修改去修改密码的方法,也算是一种好方法,在工作中,能解决问题才是根本,其他的技巧都是扯淡。虽然脚本还存在一些问题,但测试后发现可以正常安装,敢写就是一种进步。脚本源码因时间紧张,该学员未加注释,但我相信只要学完了shell基础的小伙伴都可以看懂

大家好,又见面了,我是你们的朋友全栈君。

前言

此脚本为一个学员在工作中遇到在centos7中安装mysql的问题,于是安排一个学员花了15分钟写了一个脚本,可以正常安装使用。
mysql的版本为5.7版本

此脚本涉及到安装好mysql后,日志中没有临时密码的问题,所以该学员使用了破解mysql密码登陆修改去修改密码的方法,也算是一种好方法,在工作中,能解决问题才是根本,其他的技巧都是扯淡。
虽然脚本还存在一些问题,但测试后发现可以正常安装,敢写就是一种进步。

脚本源码

因时间紧张,该学员未加注释,但我相信只要学完了shell基础的小伙伴都可以看懂,这就是一个流水账的安装方法,加了一点判断。

[root@xinsz08-18 ~]# cat mysql-install.sh 
#!/bin/bash
file=mysql57-community-release-el7-10.noarch.rpm
mkdir -p /app
cd /app
if [ -f "$file" ];then
    echo "文件已存在,无需下载"
else
    echo "正在下载所需源rpm包请稍后"

wget https://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
    if [ $? -eq 0 ];then
        echo "下载安装包成功,开始安装rpm包"
    else
        echo "download error,exit"
        exit 1
    fi

fi


yum localinstall *.rpm -y
cd /etc/yum.repos.d/

yum -y remove mariadb*
echo "开始安装mysql"
yum install make gcc-c++ cmake bison-devel ncurses-devel libaio libaio-devel -y
yum install mysql-server  -y
if [ $? -eq 0 ];then
    echo "mysql 安装成功,现在开始启动"
    systemctl start mysqld
else
   echo "mysql安装出现了问题,请排查"
   exit 2
fi
sql_prot=`lsof -i:3306 |wc -l`
if [ $sql_prot -gt 0 ];then
echo "mysql已经启动" 
else "mysql 未启动,准备查看配置文件"
fi
echo "获取登陆密码"
rm -rf /var/lib/mysql
systemctl restart mysqld
echo "skip-grant-tables=1" >> /etc/my.cnf
systemctl restart mysqld
echo "对数据库进行操作"
mysql -u root -e 'use mysql;'
mysql -u root -e 'update user set password=password('123456789') where user='root' and host='localhost';'
#mysql -e 'flush privileges; '
sed -i '/skip-grant-tables=1/d' /etc/my.cnf
echo "测试登陆,登陆后可以把root密码改成你自己想要的密码"
mysql -uroot -p123456789

####总结
刚开始写脚本,不要在意写的好坏,能够运行,完成任务就可以了,以后在慢慢完善。千万不要一上来就开始各种函数,各种循环,容易把自己绕晕。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140750.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • “Word在试图打开文件时遇到错误。请尝试下列方法:* 检查文档或驱动器的文件权限。* 确保有足够的内存和磁盘空间。* 用文件恢复转换器打开文件。”问题!…[通俗易懂]

    “Word在试图打开文件时遇到错误。请尝试下列方法:* 检查文档或驱动器的文件权限。* 确保有足够的内存和磁盘空间。* 用文件恢复转换器打开文件。”问题!…[通俗易懂]Word在试图打开文件时遇到错误。请尝试下列方法:*检查文档或驱动器的文件权限。*确保有足够的内存和磁盘空间。*用文件恢复转换器打开文件。如下图:让同事在他们自己电脑上,都是可以打开的,就我的电脑不能打开,网上搜索了一系列方法,如改后缀名、用word工具修复、下载office补丁安装都不能解决。后面无意中找到的解决方法,与有类似经历…

    2022年5月13日
    131
  • 摘星-上升篇

    以下内容均来自阳光占星,如有冒犯,告知删除!上升金牛——歌者的哼唱有这么一类人,可能有着细致柔和的五官,容易发胖的体质以及坚定的眼神。有点害羞与腼腆;喜欢哼唱着小曲,不喜欢拥挤的人群而喜欢宁静的自然。这样的一群人就是生活在我们身边的上升金牛。他们喜欢舒缓的生活节奏,喜欢按照自己的节奏去一点点的完成计划,不喜欢突如其来的变动扰乱了自己的生活。金牛是一个喜欢稳定和安逸的星座,并且由于金牛的守护星为金星,上升金牛也诞生出更多的艺术色彩。但上升金牛的审美一直被吐槽,旁人就必须忍受他那万年…

    2022年4月6日
    74
  • xshell5连接不上虚拟机_虚拟机的网络连接设置

    xshell5连接不上虚拟机_虚拟机的网络连接设置一:首先解决的关于ping的问题1.在虚拟机中ping百度看能不能先ping通,如果虚拟机连接不上网络的话Xshell肯定是连接不上的,如果有上述情况的请点击二:检查你虚拟机中防火墙是否关闭CentOs6中查看防火墙状态:serviceiptablesstatus关闭防火墙:serviceiptablesstop禁用防火墙:chkconfigiptablesoffCentOs7中查看防火墙状态:systemctlstatusfirewalld.service关闭防火墙:

    2022年9月22日
    3
  • 基因的可变剪切_如何确认发现了可变剪切

    基因的可变剪切_如何确认发现了可变剪切什么是基因的可变剪切?有些基因的前体mRNA(pre-mRNA)通过不同的剪接方式(选择不同的剪接位点)产生不同的mRNA剪接异构体,这一过程称为可变剪接(或者选择性剪切)(AlternativeS

    2022年8月5日
    6
  • Quartz与Spring集成—— SchedulerFactoryBean的初始化分析「建议收藏」

    Quartz与Spring集成—— SchedulerFactoryBean的初始化分析「建议收藏」Quartz是一个开源的定时调度框架,支持集群部署。我们可以通过其JavaAPI来使用它,或者通过Spring来配置与管理,也可以结合使用两种方式。本文重点分析Quartz与Spring集成时的初始化过程。

    2022年5月24日
    111
  • 堆排序算法图解详细流程(堆排序过程图解)

    堆排序的时间复杂度O(N*logN),额外空间复杂度O(1),是一个不稳定性的排序目录一准备知识1.1大根堆和小根堆二堆排序基本步骤2.1构造堆2.2固定最大值再构造堆三总结四代码一准备知识堆的结构可以分为大根堆和小根堆,是一个完全二叉树,而堆排序是根据堆的这种数据结构设计的一种排序,下面先来看看什么是大根堆和小根堆1.1大根…

    2022年4月18日
    362

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号