shell脚本修改mysql密码

2023-05-16

不知道你们有没有过这种经历,刚安装的mysql,立马就忘记了密码,或者过了一段时间就忘记了,找回太难了,得翻各种配置。下面 教大家一个脚本,专治mysql密码忘记的功能,一行命令就可以搞定,你一定会喜欢的

 

#!/bin/bash


# Check if user is root
if [ $(id -u) != "0" ]; then
    echo "must root"
    exit 1
fi

echo "+-------------------------------------------------------------------+"
echo "|   Reset MySQL Root Password"
echo "+-------------------------------------------------------------------+"

if [ -s /usr/local/mysql/bin/mysql ]; then
    DB_Name="mysql"
    DB_Version=`/usr/local/mysql/bin/mysql_config --version`
else
    echo "MySQL not found!"
    exit 1
fi

while :;do
    DB_Root_Password=""
    read -p "Enter New ${DB_Name} root password: " DB_Root_Password
    if [ "${DB_Root_Password}" = "" ]; then
        echo "Error: Password can't be NULL!!"
    else
        break
    fi
done

echo "Stoping ${DB_Name}..."
/etc/init.d/${DB_Name} stop
echo "Starting ${DB_Name} with skip grant tables"
/usr/local/${DB_Name}/bin/mysqld_safe --skip-grant-tables >/dev/null 2>&1 &
sleep 5
echo "update ${DB_Name} root password..."
if echo "${DB_Version}" | grep -Eqi '^8.0.|^5.7.|^10.[234].'; then
    /usr/local/${DB_Name}/bin/mysql -u root << EOF
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '${DB_Root_Password}';
EOF
else
    /usr/local/${DB_Name}/bin/mysql -u root << EOF
update mysql.user set password = Password('${DB_Root_Password}') where User = 'root';
EOF
fi

if [ $? -eq 0 ]; then
    echo "Password reset succesfully. Now killing mysqld softly"
    if command -v killall >/dev/null 2>&1; then
        killall mysqld
    else
        kill `pidof mysqld`
    fi
    sleep 5
    echo "Restarting the actual ${DB_Name} service"
    /etc/init.d/${DB_Name} start
    echo "Password successfully reset to '${DB_Root_Password}'"
else
    echo "Reset ${DB_Name} root password failed!"
fi

至此结束了, 希望对大家有帮助

 

lnmp官网有很多脚本,对于脚本的初学者,可以去看看大牛们的shell写法,饮水思源

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

shell脚本修改mysql密码 的相关文章

  • 在 MacOSX10.6 上运行 python 服务器时 MySQLdb 错误

    运行我的服务器 python manage py runserver 产生以下错误 django core exceptions ImproperlyConfigured 加载 MySQLdb 模块时出错 没有名为 MySQLdb 的模块
  • Mysql innoDB 不断崩溃[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我的数据库 mysql 服务器不断崩溃 重新启动 我不知道该怎么办 我不断在 dbname org err 文件中收到以下内容 13120
  • 在压缩存档内的文本文件上运行“head”,而不解压存档

    问候 我接手了之前的团队并编写了处理 csv 文件的 ETL 作业 我在 ubuntu 上结合使用 shell 脚本和 perl csv 文件很大 它们以压缩档案形式到达 解压后 很多都超过 30Gb 是的 那是 G 旧进程是在 cron
  • 使 pdo::query 静态

    当我运行下面的代码时出现此错误 我通常使用 msql 函数 但我尝试使用 PDO 代替 怎么了 致命错误 第 14 行无法静态调用非静态方法 PDO query
  • 查询中列的顺序重要吗?

    当从 MySQL 表中选择列时 与表中的顺序相比 选择列的顺序是否会影响性能 不考虑可能覆盖列的索引 例如 您有一个包含行 uid name bday 的表 并且有以下查询 SELECT uid name bday FROM table M
  • mysql-如何向列申请补助?

    用户名 撤销对数据库的选择 Person I set GRANT SELECT id ON database Person TO username localhost 不是工作 gt SELECT secret FROM Person Go
  • 如何在 Laravel 查询中使用多个 OR,AND 条件

    我需要 Laravel 查询帮助 我的自定义查询 返回正确结果 Select FROM events WHERE status 0 AND type public or type private 如何写这个查询Laravel Event w
  • Mysql 检索所有有限制的行

    我想检索特定用户的所有行 限制为 0 x 所以我只是想问是否有任何方法可以检索 mysql 中的所有行 而不调用返回 x 的 count id 的方法 而不重载现有函数 该函数在查询中根本没有限制 与我们的 string Relace 功能
  • MYSQL 区分大小写的 utf8 搜索(使用 hibernate)

    我的登录表具有 utf8 字符集和 utf8 排序规则 当我想要检查用户名并检索该特定用户名的其他信息时 hql 查询会为我提供小写和大写相同的结果 我应该如何处理适用于案例的 HQL 查询 我使用 Mysql 5 和 java hiber
  • InnoDB 因读未提交而死锁! - Java - Glassfish - EJB3(JPA/Hibernate)

    几天来 我在使用 Glassfish EJB3 和 Mysql InnoDB 的 Java 应用程序上遇到了死锁问题 配置 Mysql InnoDB Ver 14 12 Distrib 5 0 51a 适用于 debian linux gn
  • 为什么我的 if 语句没有按我预期的方式工作?

    我正在尝试实现以下目标 我向我的 SQL 数据库询问使用SELECT FROM subjects 这样做之后我要求使用数组mysqli fetch assoc 在那之前一切都很好 现在的问题是 当我尝试在每个循环中修改 genero 的值
  • 无法通过套接字“/var/lib/mysql/mysql.sock”连接到本地 MySQL 服务器 (2)

    当我尝试连接 mysql 时出现以下错误 Can t connect to local MySQL server through socket var lib mysql mysql sock 2 这个错误有解决办法吗 其背后的原因可能是什
  • 将古吉拉特语文本插入 MySQL 表会产生垃圾字符和不可读的文本

    我有三个 MySQL 表 我正在向其中插入古吉拉特语内容 当我插入两个表时 它们插入得很好并且可读 但在一个表中 它显示垃圾字符 不可读的文本 我怎样才能解决这个问题 MySQL 有每个表的字符集设置 http dev mysql com
  • Mysql 创建定义器

    我创建了一个在 CentOS Web 服务器上运行的 Intranet Web 应用程序 该应用程序使用另一个本地服务器 始终是 CentOS 作为 MySQL 数据库 在数据库内部我创建了例程 这些例程总是这样开始 CREATE DEFI
  • 比特纳米。重置mysql根密码

    我如何重置 MySQL 中的 root 密码和帐户 因为我按照如何为其他服务器授予权限的说明操作 并且意外地将 root 用户 Mysql 绑定到其他 IP 地址 现在看来我无法在 localhost 上以管理员身份登录 Thanks 您有
  • 在 PHP 字符串中格式化 MySQL 代码

    是否有任何程序 IDE 可以在 PHP 字符串中格式化 MySQL 代码 例如 我使用 PHPStorm IDE 但它无法做到这一点 它对 PHP 和 MYSQL 执行此操作 但不适用于 php 字符串内的 MYSQL 我已准备好使用新的
  • 同一配置文件上的两个不同提供程序

    我在用着实体框架 6 1 0 I have 2 家提供者 MysqlClient 和 SQLServerCE 我需要创建2个不同的DBContext 这迫使我创造2个配置类因为mysql有一些不同的东西 但是当我初始化应用程序时 Datab
  • 我可以使用 HSQLDB 进行 junit 测试克隆 mySQL 数据库吗

    我正在开发一个 spring webflow 项目 我想我可以使用 HSQLDB 而不是 mysql 进行 junit 测试吗 如何将我的 mysql 数据库克隆到 HSQLDB 如果您使用 spring 3 1 或更高版本 您可以使用 s
  • 如何修改现有表以添加时区

    我有一个包含 500 多个表的大型应用程序 我必须将应用程序转换为时区感知 当前应用程序使用new java util Date GETDATE 与服务器的时区 即没有任何时区支持 我已将这项任务分为几个步骤 以便于开发 我确定的第一个步骤
  • 在 VBA 中捕获 shell 命令的输出值?

    发现这个功能http www cpearson com excel ShellAndWait aspx http www cpearson com excel ShellAndWait aspx 但我还需要捕获 shell 的输出 有什么代

随机推荐

  • 2-1000之间的完数

    题目描述 xff1a 编写程序显示2 1000之间的说有完数 xff0c 所谓完数是指 xff0c 该数的各因子之和正好等于该数本身 代码 xff1a span class hljs preprocessor include lt stdi
  • Android Studio R报红的总结

    做个笔记 xff0c 懒得折腾格式 1 一般由于 xff0c 电脑太慢 xff0c 等一会就差不多了 xff0c 或者重启studio xff0c 甚至电脑 xff0c 记得当年as1 0就经常要这样 2 或者刷新gradle 3 看到有人
  • 基于Android平台的个人时间管理系统的设计与实现

    0 前言 另外一个毕设作品 xff0c 功能不算完善 xff0c 主体框架使用了 高效Android工程师6周养成计划 里面的项目内容 xff0c 其中最核心功能就是仿照 我要当学霸 这个软件的形式实现的监督不让用户玩手机的功能 xff0c
  • PDF内复制文字多余换行问题【完美解决】

    问题描述 从PDF中复制文字后粘贴 xff0c 结果每行出现换行 影响最大的就是笔者google翻译论文的时候 xff0c 效果很差 多出的换行符 翻译效果 xff0c 目不忍视 解决办法 使用工具 sublime 使用快捷键 shift
  • 15.【cocos2d-x 源码分析】:localStorage的详细分析

    对应源码位置 xff1a cocos2d x 3 3 cocos storage local storage localStorage localStorage 的接口 cocos2d x提供了简单的本地数据存储的功能 xff0c 其主要是
  • 16【cocos2d-x 源码分析】:HttpClient 的详细分析

    对应源码位置 xff1a cocos2d x 3 3 cocos network Http HttpRequest的实现 span class token keyword typedef span std span class token
  • 17【cocos2d-x 源码分析】:多分辨率支持的详细分析

    对应源码位置 xff1a cocos2d x 3 3 cocos platform GLView 设计分辨率与屏幕分辨率 cocos2d x中 xff0c 进行游戏设计时使用逻辑上的设计分辨率 xff0c 当具体游戏运行在物理机上时对应具体
  • ubuntu与Windows进行远程连接

    安装xrdp sudo apt get install xrdp 安装vnc4server sudo apt get install vnc4server 安装xubuntu desktop sudo apt get install xub
  • Python 爬取ts流视频

    准备工具 1 安装python xff0c 本机环境linux 43 python3 6 2 直接开撸 xff0c 基本的包需要pip install 3 话不多说直接干 https www com video 2 1 html某网站 xf
  • JS报错-TypeError: xxx is not a function

    在今天的工作中 xff0c 有个勾选框的onchage事件绑定的函数明明有实现 但是触发时 xff0c 一直报错TypeError xxx is not a function 一直以为是错误Uncaught ReferenceError a
  • 深入理解Python中的if语句

    公众号 xff1a 尤而小屋 作者 xff1a Peter 编辑 xff1a Peter 大家好 xff0c 我是Peter 在生活中总是会听到这样的话 xff1a 如果我上课认真一点 xff0c 英语肯定可以及格如果我努力锻炼 xff0c
  • NVIDIA 显卡驱动安装

    补充 xff1a 这篇博文目前是整理的结果 xff0c 之前安装了 xff13 xff18 xff14 xff0c 但是之前电脑卡死次数太多 xff0c 强制重启后 xff0c 突然驱动就没有了 xff0c 扩展屏幕也用不了 xff0c 因
  • beego打包linux运行包命令

    span class hljs attribute bee pack be GOOS span 61 span class hljs string linux span
  • Web安全原理剖析(十六)——DOM型XSS攻击

    目录 4 7 DOM型XSS攻击4 8 DOM型XSS代码分析 4 7 DOM型XSS攻击 DOM型XSS攻击页面实现的功能是在 输入 框中输入信息 xff0c 单击 替换 按钮时 xff0c 页面会将 这里会显示输入的内容 替换为输入的信
  • QScrollArea 无法通过样式改变背景色,无法去除边框

    QScrollArea 无法通过样式改变背景色 xff0c 无法去除边框 QScrollArea 是无法通过样式表来改变背景色的 xff0c 只能设置加入到QScrollArea里面的QWidget的样式 xff0c 这样才能改变背景色 当
  • 将驱动编译成.ko文件添加到嵌入式Linux系统下

    为减少内核所占的空间 xff0c 很多时候我们在编译内核时都会选择裁去一些暂时不用的驱动 xff0c 当我们在使用时找不到对应的驱动 xff0c 除了重新编译内核外 xff0c 一个比较方便的做法是将对应的驱动编译成 ko文件 xff08
  • 嵌入式Linux上没有wlan0

    有时候我们的嵌入式板子上有无线网卡 xff0c 可是无法连接到wifi上 xff0c 使用 sudo ifconfig 也看不到 wlan0 的相关信息 这时我们可以使用 sudo ifconfig a 看一下具体信息 xff0c 我们可以
  • Linux远程界面中Tab键不能补全

    我们在使用嵌入式Linux板子的时候 xff0c 时常需要使用到远程界面 xff0c 可以通过本地电脑对板子进行操作 xff0c 显得相对便捷 在远程界面的使用中 xff0c 不可避免地要在终端进行命令输入 xff0c 这时可能出现Tab键
  • Linux下使用游戏手柄

    大多数情况下 xff0c Linux系统都带有手柄驱动模块joydev xff0c 当我们插上设备的时候可以通过以下指令查看是否检测到该设备 ls dev 或者 ls dev input 如果有出现 js0 的设备 xff0c 则证明设备能
  • shell脚本修改mysql密码

    不知道你们有没有过这种经历 xff0c 刚安装的mysql xff0c 立马就忘记了密码 xff0c 或者过了一段时间就忘记了 xff0c 找回太难了 xff0c 得翻各种配置 下面 教大家一个脚本 xff0c 专治mysql密码忘记的功能