热搜词
发表于 2007-10-4 09:01:19 | 显示全部楼层 |阅读模式
本帖最后由 灰儿 于 2009-6-17 21:49 编辑

首先要声明一点,大部分情况下,修改MySQL是需要有mysql里的root权限的,所以一般用户无法更改密码,除非请求管理员。

方法一:
  使用phpmyadmin,服务器端web目录需要放置phpmyadmin脚本程序。
      用ROOT的用户登陆(其他帐号登陆没有权限执行这项的)
      服务器-权限-root或其它用户-编辑权限-更改密码-密码-输入密码-执行

方法二:
  最简单的方法就是使用mysqladmin命令,如下简单描述:
      1.例如你的root用户现在没有密码,你希望的密码修改为123,那么命令是:
      mysqladmin -u root password 123

      2.如果你的root现在有密码了,那么修改密码为123的命令是:
      mysqladmin -u root -p password 123
     
     注意,命令回车后会问你旧密码,输入旧密码之后命令完成,密码修改成功。
  当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,
  那么这种方法就是无效的。
  而且mysqladmin无法把密码清空。

接下来使用的方法都在mysql提示符下使用,且必须有mysql的root权限:

方法三:
cmd下切换到 mysql 安装目录

d:/mysql/bin
前提:mysql用户root密码为空.
输入 mysql -u root mysql
mysql> 状态下输入 update user set password=password('新密码') where user='root';
回显:
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> 状态下输入 FLUSH PRIVILEGES;
回显:
Query OK, 0 rows affected (0.00 sec)
mysql> 状态下输入 quit
退出 sql

注意每个命令后都要加上一个分号 ";"
mysql 才开始执行该行命令



方法四:
  mysql> INSERT INTO mysql.user (Host,User,Password)
  VALUES('%','jeffrey',PASSWORD('biscuit'));
  mysql> FLUSH PRIVILEGES
  确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。
  在《mysql中文参考手册》里有这个例子,所以我也就写出来了。
  注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。

方法五:
  和方法三一样,只是使用了REPLACE语句
  mysql> REPLACE INTO mysql.user (Host,User,Password)
  VALUES('%','jeffrey',PASSWORD('biscuit'));
  mysql> FLUSH PRIVILEGES

方法六:
  使用SET PASSWORD语句,
  mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit');
  你也必须使用PASSWORD()函数,
  但是不需要使用FLUSH PRIVILEGES。

方法七:
  使用GRANT ... IDENTIFIED BY语句
  mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';
  这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。
  注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。
全部评论3
回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-11-22 17:52 , Processed in 0.175371 second(s), 23 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team