ubuntu

Ubuntu MySQL如何修改密码

小樊
61
2025-03-10 07:54:13
栏目: 云计算

在 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
    

安全建议

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

0
看了该问题的人还看了