用于在Centos7系统自动化安装Mysql5.7版本的脚本

systemctl stop firewalld.service 
systemctl disable firewalld.service 
setenforce 0

rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-10.noarch.rpm

sed -i '5c enabled=1' /etc/yum.repos.d/mysql-community.repo
sed -i '14c enabled=0' /etc/yum.repos.d/mysql-community.repo

yum -y install mysql-community-server

systemctl start mysqld

password=$(cat /var/log/mysqld.log |grep password | awk '{print $NF}')

echo "ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';" > /tmp/reset_password.sql

mysql -uroot -p$password --connect-expired-password < /tmp/reset_password.sql

rm -rf /tmp/reset_password.sql

systemctl restart mysqld

代码详解:

0.关闭防火墙及SELinux

1.首先到MySQL官网下载rpm源并安装

2.MySQL官方源默认配置MySQL8.0版本,需要关闭MySQL8.0的源,打开5.7的源

使用sed将对应行内容替换掉,选项-i 修改源文件

3.修改完成后直接安装MySQL

4.启动MySQL服务,MySQL首次启动后会在日志中生成初始密码

使用cat读取日志文件,然后grep过滤关键词password,在使用awk进行过滤,最后将过滤出来的密码设置为变量$password

awk使用变量$n,指当前记录的第n个字段,NF指一条记录的字段的数目,合并使用则为当前记录的最后一个字段

5.创建用于修改初始密码的sql文件

password处为你为MySQL设置的密码

MySQL密码复杂度要求:大写字母,小写字母,数字,特殊符号,不少于8位

6.使用初始密码登录 MySQL,并执行修改密码的 SQL 文件

7.删除临时的sql文件

8.重启MySQL服务

注:如需安装8.0版本,下载rpm源后跳过步骤2中的修改配置文件即可

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值