mysql常用命令之-用户密码修改

--创建用户

CREATE USER 'user1'@'localhost' IDENTIFIED BY 'pass1';

GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'user1'@'localhost';

GRANT ALL ON *.* TO 'user1'@'localhost';

 

1.修改root密码

方法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)'

 

方法2直接更新userpassword字段

--适用于忘记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: 登录并修改MySQLroot密码

--此时直接用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;

 

 

 

你可能感兴趣的:(mysql常用命令之-用户密码修改)