您的位置:首页 > 科技 > 能源 > 网站开发公司开发过程_个人网页html模板_百度手机应用市场_搜外友链平台

网站开发公司开发过程_个人网页html模板_百度手机应用市场_搜外友链平台

2024/12/22 19:54:37 来源:https://blog.csdn.net/LCL_18/article/details/142957313  浏览:    关键词:网站开发公司开发过程_个人网页html模板_百度手机应用市场_搜外友链平台
网站开发公司开发过程_个人网页html模板_百度手机应用市场_搜外友链平台

1.问题

我认为啊学习就是一个思考的过程,思考问题的一个流程应该是:提出问题,分析问题,解决问题

在shell里部署mysql服务时,我出现一些问题:

1.安装mysql-server时,没有密钥,安装失败

  2.怎么利用正则表达式去锁定临时密码

  3.进入mysql数据库后,怎么对密码进行修改

2.分析

1.可以在yum 安装 mysql-server服务时,添加 –nogpgcheck,实现不用密钥安装,或者去yum源配置文件中,将mysql源中gpgcheck=1改为gpgcheck=0。

2.临时密码会放在/var/log/mysql.log中,利用grep关键字搜索出具有temporary password所在行,再利用awk去锁定相应的字段

3.因为使用的是临时密码,无法实现一部分操作,比如:查询库,表等等操作都无法进行,我们必须对密码进行修改,才能实现对数据库的一些操作,进入MySQL对密码策略进行更改,再对进行修改密码。

3.流程图

4.代码实现

#!/bin/bashscript_start=`date +%s`#安装wget工具,为后续下载mysql源做准备install_wget (){yum install wgetstatus1=$?if [ $status1 = 0 ];thenecho "wget 安装成功"fi}#安装mysqlinstall_mysql (){# 把mysql源下载到本地wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm# 使用rpm安装yum install -y mysql-server --nogpgcheckstatus2=$?if [ $status2 = 0 ];thenecho "mysql服务安装成功"fi}#启动服务并设置开机自启start_server (){systemctl start mysqldsystemctl enable mysqld#安装net-tools,这个工具包含了查看端口的命令yum install -y net-toolsstatus3=$?if [ $status3 = 0 ];thennetstat -ntlp |grep "mysqld"echo "3306端口开启,mysql服务启动了"elseecho "未开启3306端口,mysql未启动"rpm -ivh mysql57-community-release-el7-11.noarch.rpm#因为本地环境安装了mysql源,所以使用yum安装mysql服务fi}#为MySQL设置密码set_mysql_password (){mysql -uroot -p123456 -e "exit"status4=$?if [ $status4 != 0 ];then#--connect-expired-password根据原意可知允许连接一个过期的密码,-e 后面一般跟SQL语句或者命令,相当于在外部使用命令对mysql进行操作temporary_password=$(grep "temporary password" /var/log/mysqld.log |awk '{print $NF}')mysql --connect-expired-password -uroot -p$temporary_password -e "set global validate_password_policy=LOW; set global validate_password_length=6; alter user 'root'@'localhost' IDENTIFIED BY '123456';exit"fi}install_wgetinstall_mysqlstart_server
set_mysql_passwordrm -rf mysql57-community-release-el7-11.noarch.*script_stop=`date +%s`run_time=$[$script_stop-$script_start]echo "脚本此次运行时长$run_time秒"

5.结果验证

输入密码为123456,能否登录mysql

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com