mysql 密码设置,MySQL 密码设置

设置当前服务器主机上的一个特定用户的口令。只有具备存取mysql数据库的用户可以这样做。用户应该以user@hostname格式给出,这里 user和hostname完全与他们列在mysql.user表条目的User和Host列一样。例如,如果你有一个条目其User和Host字段是 'bob'和'%.loc.gov',你将写成:

mysql> SET PASSWORD FOR bob@"%.loc.gov" = PASSWORD("newpass");

直接修改授权表

另一种修改,密码的方法是直接修改授权表user。只有具备存取mysql数据库的用户可以这样做。

例如,如果你有一个条目其User和Host字段是'bob'和'%.loc.gov',你将写成:

mysql> UPDATE mysql.user SET password=PASSWORD("newpass") where user="bob' AND host="%.loc.gov";

mysql>FLUSH PRIVILEGES;

重新设置一个遗忘的root口令

如果你遗忘了root用户的口令,那么将会是一件非常麻烦的事。除非你有其它有特权的用户,否则很多操作都无法完成,例如,关闭数据库等等。

你应当选用--without-grant-tables选项启动mysqld服务,你可以在这时更改授权表的相关内容,也可以用mysqlaccess检查你的授权是否到位。

例如,如果你忘记了你的MYSQL的root口令的话,你可以通过下面的过程恢复。

1、关闭MySQL服务器

向mysqld server 发送kill命令关掉mysqld server(不是 kill -9),存放进程ID的文件通常在MYSQL的数据库所在的目录中。

kill `cat /mysql-data-directory/hostname.pid`

你必须是UNIX的root用户或者是你所运行的SERVER上的同等用户,才能执行这个操作。

如果在windows平台上,也可以停止进程。如果是NT还可以用net stop mysql命令关闭数据库。

2、使用'--skip-grant-tables' 参数来启动 mysqld。

Unix平台:

$su mysql

$safe_mysqld --skip-grant-tables &

Windows平台:

C:\mysql\bin>mysqld --skip-grant-tables

以上语句,假定都位于正确的目录。

3、连接到服务器,修改口令

使用'mysql -h hostname mysql'命令登录到mysqld server ,用grant命令改变口令:

mysql>GRANT ALL ON *.* TO root@localhost INDENTIFIED BY 'new password'

-> WITH GRANT OPTION;

mysql>GRANT ALL ON *.* TO root@% INDENTIFIED BY 'new password'

-> WITH GRANT OPTION;

(如果存在一个能从任意地址登录的root用户,初始化授权表后,生成该用户,为了安全,你可能已经删除该用户)。

其实也可以直接修改授权表:

mysql> use mysql;

mysql> update user set password =password('yourpass') where user='root';

你可能使用工具mysqladmin修改密码:

shell> mysqladmin -h hostname -u root password 'new password

但是它修改的密码语服务器匹配的用户有关。如果,你从服务器主机连接,那么服务器匹配的是root@localhost,修改该用户密码,否则一般修改root@%密码,除非你有其它root用户存在。

4. 载入权限表:

shell> mysqladmin -h hostname flush-privileges

或者使用 SQL 命令`FLUSH PRIVILEGES'。

当然,在这里,你也可以重启mysqld。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值