Centos7 yum安装 mysql8+一键部署脚本
1、mysql官网(https://downloads.mysql.com/),下载rpm包
1 | wget https: //downloads.mysql.com/archives/get/p/23/file/mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar |
2、解压
1 2 | mkdir mysql8 tar xvf mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar -C ./mysql8 |
3、安装
1 2 | cd mysql8 yum install -y *.rpm |
4、启动msql,找到登录密码
systemctl start mysqld cat /var/log/mysqld.log | grep password
5、先修改复杂点的mysql密码,然后再改回来
1 | ALTER USER 'root' @ 'localhost' IDENTIFIED WITH mysql_native_password BY 'Sykj_2022' password expire never; |
6、创建用户并授权
1 2 | create user 'root' @ '%' IDENTIFIED BY 'sykj_2022' ; grant all privileges on *.* to 'root' @ '%' WITH GRANT OPTION; |
7、查看 mysql 初始的密码策略
1 2 3 4 5 6 7 8 9 10 11 12 13 | SHOW VARIABLES LIKE 'validate_password%' ; 关于 mysql 密码策略相关参数; 1)、validate_password.length 固定密码的总长度; 2)、validate_password.dictionary_file 指定密码验证的文件路径; 3)、validate_password.mixed_case_count 整个密码中至少要包含大/小写字母的总个数; 4)、validate_password.number_count 整个密码中至少要包含阿拉伯数字的个数; 5)、validate_password.policy 指定密码的强度验证等级,默认为 MEDIUM; 关于 validate_password.policy 的取值: 0/LOW:只验证长度; 1/MEDIUM:验证长度、数字、大小写、特殊字符; 2/STRONG:验证长度、数字、大小写、特殊字符、字典文件; 6)、validate_password_special_char_count 整个密码中至少要包含特殊字符的个数; |
8、修改密码策略
1 | set global validate_password.policy=LOW; |
9、刷新一下系统权限表
1 | flush privileges; |
一键部署脚本
vim deploy_mysql.sh
#/bin/bash updatePassword="sykj@2024" #下载rpm包 wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar #解压 echo "解压" mkdir mysql8 tar xvf mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar -C ./mysql8 #安装 echo "安装" cd mysql8 yum install -y *.rpm #启动msql,找到登录密码 echo "启动msql,找到登录密码" systemctl start mysqld password=$(grep 'temporary password' /var/log/mysqld.log | awk '{print $NF}') sleep 3 #登录mysql修改root用户密码,创建远程登录用户 echo "登录mysql修改root用户密码,创建远程登录用户" mysql --connect-expired-password -uroot -p"${password}" << eof ALTER USER root@'localhost' identified by "Sykj_2022"; INSTALL PLUGIN validate_password SONAME 'validate_password.so'; set global validate_password.policy=LOW; set global validate_password.length=1; ALTER USER root@'localhost' identified by "${updatePassword}"; CREATE USER 'root'@'%' identified by "${updatePassword}"; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; flush privileges; eof echo "脚本运行成功!"
chmod a+x deploy_mysql.sh
./mysql.sh
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)