Ubuntu MySQL如何修改密码

50
2025/3/10 9:32:18
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在 Ubuntu 上修改 MySQL 密码有多种方法,以下介绍几种常用的方法:

方法一:使用 mysqladmin 工具

  1. 登录到 MySQL 服务器(无需密码): 如果你当前可以无密码登录 MySQL,可以使用以下命令修改密码:

    mysqladmin -u root password 新密码
    

    如果需要指定主机,可以使用 -h 参数:

    mysqladmin -u root -h localhost password 新密码
    
  2. 如果无法无密码登录: 你需要先以安全模式启动 MySQL,跳过权限验证,然后修改密码。

    • 停止 MySQL 服务:

      sudo systemctl stop mysql
      
    • 以跳过权限验证的方式启动 MySQL:

      sudo mysqld_safe --skip-grant-tables &
      
    • 无密码登录 MySQL:

      mysql -u root
      
    • 在 MySQL 提示符下,更新 root 用户的密码:

      FLUSH PRIVILEGES;
      ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
      
    • 退出 MySQL 并重启服务:

      quit
      sudo systemctl start mysql
      

方法二:通过 MySQL 客户端修改

  1. 登录到 MySQL

    mysql -u root -p
    

    输入当前密码后进入 MySQL 提示符。

  2. 修改密码

    ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
    

    或者对于旧版本的 MySQL:

    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('新密码');
    
  3. 刷新权限并退出

    FLUSH PRIVILEGES;
    EXIT;
    

方法三:使用 UPDATE 语句直接修改

如果你已经登录到 MySQL,也可以通过 SQL 语句直接修改密码:

USE mysql;
UPDATE user SET authentication_string=PASSWORD('新密码') WHERE User='root';
FLUSH PRIVILEGES;
EXIT;

注意PASSWORD() 函数在 MySQL 5.7.6 及以上版本中已被弃用,建议使用 ALTER USER 语句。

方法四:重置 root 密码(适用于忘记密码的情况)

如果忘记了 root 密码,可以按照以下步骤重置:

  1. 停止 MySQL 服务

    sudo systemctl stop mysql
    
  2. 以跳过权限验证的方式启动 MySQL

    sudo mysqld_safe --skip-grant-tables &
    
  3. 无密码登录 MySQL

    mysql -u root
    
  4. 更新 root 密码

    FLUSH PRIVILEGES;
    ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
    
  5. 退出 MySQL 并正常重启服务

    quit
    sudo systemctl start mysql
    

安全建议

  • 使用强密码:确保新密码复杂且难以猜测,包含字母、数字和特殊字符。
  • 限制用户权限:根据需要为不同的用户分配最小必要的权限,避免使用具有过高权限的账户。
  • 定期更换密码:定期更新数据库用户的密码,增强安全性。
  • 使用 SSL 加密连接:配置 MySQL 使用 SSL/TLS 加密客户端与服务器之间的通信,防止密码在传输过程中被窃取。

希望以上方法能帮助你在 Ubuntu 系统上顺利修改 MySQL 密码。如有其他问题,欢迎继续提问!

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: ubuntu创建目录报错的原因有哪些