linux mysql修改密码命令

linux mysql修改密码命令,第1张

想知道linux下怎么修改密码吗?下面由我为大家整理了linux mysql修改密码命令,希望大家喜欢!

   linux mysql修改密码命令

   1.修改root密码

linux mysql修改密码命令方法1:使用mysqladmin命令

--适用于记得root旧密码,修改root密码

语法:

mysqladmin -u用户名 -p旧密码 password 新密码

例如:

# mysqladmin -u root -proot password mysql

--注意:如当旧密码输入错误时会报如下错误

# mysqladmin -u root -proot1 password mysql

mysqladmin: connect to server at 'localhost' failed

error: 'Access denied for user 'root'@'localhost' (using password: YES)'

linux mysql修改密码命令方法2:直接更新user表password字段

--适用于忘记root密码,而对root密码进行重置

Step 1: 修改MySQL的登录设置

# vi /etc/my.cnf

--windows系统是my.ini文件

--在[mysqld]的段中加上一句:skip-grant-tables,如没有[mysqld]字段,可手动添加上

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

skip-name-resolve

skip-grant-tables

Step 2: 重新启动mysql

[root@gc ~]# service mysql restart

Shutting down MySQL..[确定]

Starting MySQL...[确定]

Step 3: 登录并修改MySQL的root密码

--此时直接用mysql即可无需密码即可进入数据库了

[root@gc ~]# mysql

Welcome to the MySQL monitor. Commands end with or \g.

Your MySQL connection id is 2

Server version: 5.5.24 MySQL Community Server (GPL)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help' or '\h' for help. Type '\c' to clear the current input statement.

mysql>use mysql

Database changed

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

Query OK, 5 rows affected (0.00 sec)

Rows matched: 5 Changed: 5 Warnings: 0

mysql>flush privileges

Query OK, 0 rows affected (0.00 sec)

--注意:如果没做step1,直接用mysql登录时会报如下错误

[root@gc ~]# mysql

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

Step 4: 将MySQL的登录设置修改回来

再删除/etc/my.cnf文件中的skip-grant-tables

Step 5: 重新启动mysql

[root@gc ~]# service mysql restart

Shutting down MySQL..[确定]

Starting MySQL...[确定]

   2.修改mysql其它用户密码

同样,普通用户也可以用上面的方法

--使用mysqladmin命令

[root@njdyw ~]# mysqladmin -u user1 -ppass1 password pass2

--直接修改数据库表

[root@njdyw ~]# mysql -u user1 -ppass1 –Dmysql

mysql>update user set password=password('pass2') where user='user1'

mysql>flush privileges

(1)Linux系统

在SSH中执行下面的命令即可将MySQL密码重置为diavps

复制代码

代码如下:

rm

-f

reset-mysql-root-password.phps

wget

http://down.hostwiki.info/mysql/reset-mysql-root-password.phps

php

reset-mysql-root-password.phps

diavps

注意不要在带有管理面板(如Kloxo或DA)的环境中使用这个方法重置。

脚本中第13行中的以安全模式启动MySQL的命令会因MySQL安装路径不同而不同。

脚本中使用的mysql服务名称为mysqld,部分系统中该服务名可能为mysql,请注意修改。

(2)Windows系统

1、首先停止正在运行的MySQL进程

net

stop

mysql

如未加载为服务,可直接在进程管理器中进行关闭。

2、以安全模式启动MySQL

在命令行下运行

X:/MySQL/bin/mysqld-nt.exe

--skip-grant-tables

3、完成以后就可以不用密码进入MySQL了

X:/MySQL/bin/mysql

-u

root

-p

提示输入密码时直接回车即可。

4、更改密码

>use

mysql

>update

user

set

password=password("新密码")

where

user="root"

>flush

privileges

5、启动MySQL

在任务管理器里关闭所有MySQL的进程,使用下面的命令启动。

net

start

mysql

或者

初次修改密码时,需要注意的是密码中需要含有字母、数字、特殊字符 (要含有大小字母且长度不能小于8)

关于 mysql 密码策略相关参数;

1)、validate_password_length 固定密码的总长度;

2)、validate_password_dictionary_file 指定密码验证的文件路径;

3)、validate_password_mixed_case_count 整个密码中至少要包含大/小写字母的总个数;

4)、validate_password_number_count 整个密码中至少要包含阿拉伯数字的个数;

5)、validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;

关于 validate_password_policy 的取值:

0/LOW:只验证长度;

1/MEDIUM:验证长度、数字、大小写、特殊字符;

2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;

6)、validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/5896049.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存