mysql修改数据库密码

      这几天用空密码登录mysql后,然后准备修改mysql默认密码,use mysql表出现过这个问题,提示:ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'。网上找了一些方法,终于搞定了。
 
       我用的是xampp集成的mysql,之前空密码能登进去的发现是因为mysql数据库的user表里,存在用户名为空的账户即匿名账户,导致登录的时候是虽然用的是root,但实际是匿名登录的,通过错误提示里的''@'localhost'可以看出来。我用方法一解决了问题,

 

方法1:

在my.ini的[mysqld]字段加入:

skip-grant-tables

 

重启mysql服务,这时的mysql不需要密码即可登录数据库

然后进入mysql执行修改数据库密码sql语句:update user set password=password('admin') WHERE User='root';

再执行:flush privileges;

 

运行之后最后去掉my.ini中的skip-grant-tables,重启mysqld即可。

 

方法2:
不使用修改my.ini重启服务的方法,通过非服务方式加skip-grant-tables运行mysql来修改mysql密码
停止mysql服务
打开命令行窗口,在bin目录下使用mysqld-nt.exe启动,即在命令行窗口执行: mysqld-nt --skip-grant-tables
然后另外打开一个命令行窗口,登录mysql,此时无需输入mysql密码即可进入。
按以上方法修改好密码后,关闭命令行运行mysql的那个窗口,此时即关闭了mysql,如果发现mysql仍在运行的话可以结束掉对应进程来关闭。
启动mysql服务。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 如果您需要修改 MySQL 数据库密码,可以执行以下步骤: 1. 进入 MySQL 命令行: ``` mysql -u root -p ``` 2. 使用当前的 root 密码登录到 MySQL。 3. 使用以下语句来修改密码: ``` ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword'; ``` 请将 "newpassword" 替换为您想要的新密码。 4. 退出 MySQL 命令行: ``` quit; ``` 现在,您应该能够使用新的密码登录到 MySQL。 ### 回答2: 要修改MySQL数据库密码,可以按照以下步骤进行操作: 1. 首先,连接到MySQL数据库服务器。可以使用命令行终端或者使用MySQL的图形界面工具,如phpMyAdmin等。 2. 输入管理员账户名和密码来登录MySQL服务器。管理员账户名通常是"root"。 3. 登录成功后,选择要修改密码数据库。如果要修改所有数据库密码,可以选择MySQL系统数据库"mysql"。 4. 在选定的数据库中,通过以下命令来修改密码: ``` ALTER USER '用户名'@'访问主机' IDENTIFIED BY '新密码'; ``` 其中,'用户名'是要修改密码的用户名,'访问主机'是该用户可以访问的主机。如果要允许该用户从任何主机访问,可以将'访问主机'设置为"%”。'新密码'是要设置的新密码。 例如,要修改用户名为"example"的用户在所有主机上的密码为"newpassword",可以输入以下命令: ``` ALTER USER 'example'@'%' IDENTIFIED BY 'newpassword'; ``` 5. 修改密码后,记得刷新MySQL的权限表,以便新密码生效。可以使用以下命令来刷新权限: ``` FLUSH PRIVILEGES; ``` 6. 最后,退出MySQL服务器。 这样,就成功地修改MySQL数据库密码。 ### 回答3: 要修改MySQL数据库密码,可以按照以下步骤进行操作: 1. 登录MySQL数据库,可以使用命令`mysql -u 用户名 -p`来登录,用户名替换为你的数据库用户名。然后输入密码进行登录。 2. 登录成功后,使用以下命令选择要修改密码数据库:`use 数据库名;`,数据库名替换为你的数据库名。 3. 使用以下命令查看当前用户的权限和密码:`select user,host,plugin,authentication_string from mysql.user where user = '用户名';`,用户名替换为你的数据库用户名。记住当前用户的`authentication_string`字段的值,这是当前用户的密码。 4. 使用以下命令来修改密码:`ALTER USER '用户名'@'localhost' IDENTIFIED BY '新密码';`,用户名替换为你的数据库用户名,新密码替换为你想要设置的新密码。 5. 修改完成后,使用以下命令刷新权限:`flush privileges;`。 6. 最后,使用以下命令退出数据库:`exit;`。 现在你已经成功修改MySQL数据库密码。记得将以上步骤中的`用户名`和`数据库名`替换为实际的值,并根据需要修改相应的参数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值