MySQL(mysql 5.7)用户密码的管理

数据库是信息系统中非常重要的一个环节,合理高效的对其进行管理是非常重要的工作。通常由管理员创建不同的管理账户,然后给予不同的操作权限,把这些账户交给相应的管理人员使用。
在mysql数据库中,所有的用户信息都被保存在mysql库的user表中

mysql> use mysql;
mysql> show tables;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
|··· //省略部分表           |
| user                      |
+---------------------------+
31 rows in set (0.00 sec)

管理管理用户

通过对user表的添加、修改、删除可以管理mysql的用户,使用CREATE创建新用户,DROP删除用户,SET修改用户密码。

用户的添加、删除

  • 明文添加新用户

    create user ‘zhangsan‘@‘localhost‘ identified by ‘123456‘;
    //创建新用户’zhangsan‘允许在本地登陆(可以更改为其他的IP地址)密码为123123
  • 密文添加新用户
    mysql> select password (‘123123‘);  //生成密文字符串
    +-------------------------------------------+
    | password (‘123123‘)                       |
    +-------------------------------------------+
    | *E56A114692FE0DE073F9A1DD68A00EEB9703F3F1 |
    +-------------------------------------------+
    1 row in set, 1 warning (0.01 sec)
    mysql> create user ‘lisi‘@‘localhost‘ identified by password ‘*E56A114692FE0DE073F99A1DD6
          //密文创建新用户
  • 查询新添加的用户
    select user,authentication_string,host from user;   //查询user表中的用户、密码、主机三列数据

  • 删除用户
    drop user ‘zhangsan‘@‘localhost‘;

    用户密码修改

  • 使用SET命令修改用户密码
    set password=password(‘123123‘);  //修改当前登陆用户密码
    set password for ‘lisi‘@‘localhost‘=password(‘123456‘);  //修改其他用户密码

    遗忘root密码的解决方法

  • 先关闭正在运行中的MySQL进程
    systemctl stop mysqld.service
    netstat -ntap | grep 3306     //查询不到3306端口信息,则表示mysql进程已结束
    killall mysqld     //**如果正常的停止命令无法关闭进程,则可使用该命令

  • 使用跳过user表验证的方式登陆
    mysqld --skip-grant-tables   
  • 更改密码
    输入上一条命令后重新打开新的终端登陆
    mysql -u root   //新终端登陆
    update mysql.user set authentication_string=password(‘abcabc‘) where user=‘root‘;
    //更改用户表(user)中的密码项
    flush privileges;    //刷新,刷新之后方能使用新密码登陆系统

原文地址:http://blog.51cto.com/13643643/2133408

时间: 2024-10-09 12:38:23

MySQL(mysql 5.7)用户密码的管理的相关文章

MYSQL grant 与 修改用户密码

MYSQL 创建用户,并授权,修改密码. 创建用户并将所有权限,授权给LAW create user [email protected]: grant all privileges on *.* to [email protected] identified by "";   ----OK 创建本地用户空密码,并授予相关选择,更新等权限,且只能作用于mysql数据库. create user [email protected]; grant select,update,insert o

如何重置MySQL数据库的root用户密码

问题 如何重置MySQL数据库的root用户密码 解决方案 当忘记MySQL的root密码的时候,可以进行如下的步骤重新设置MySQL的root密码: ■■Linux的平台■■ 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库.因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的状态下,其他的用户也可以任意地登录和修改MySQL的信息.可以采用将MySQL对外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全状态

Mysql常用命令(1) 连接Mysql数据库及修改用户密码

我还在在Linux下测试,我用的是centos,话不多说,启动控制台,输入命令: [Shell] 纯文本查看 复制代码 ? 001 mysql -h localhost -u root -p 如下图<ignore_js_op> mysql命令格式: mysql -h主机地址 -u用户名 -p用户密码 退出输入exit回车即可 修改用户密码:mysqladmin命令格式: [Plain Text] 纯文本查看 复制代码 ? 001 mysqladmin -u 用户名 -p旧密码 password

浅析mysql主从复制中复制用户的权限管理

在用复制账号对mysql salve管理过程中,使用哪些权限合适?首先看一下mysql官方提供的权限表: 权限 列 上下文 CREATE Create_priv 数据库.表或索引 DROP Drop_priv 数据库或表 GRANT OPTION Grant_priv 数据库.表或保存的程序 REFERENCES References_priv 数据库或表 ALTER Alter_priv 表 DELETE Delete_priv 表 INDEX Index_priv 表 INSERT Inse

linux系统下修改mysql 数据库的root用户密码和开启远程用户

首先进入终端 1.输入以下命令显示mysql进程号 ps -A |grep -i mysql 2.输入以下命令kill掉上面显示的进程 kill -9 进程号1 进程号2 3.输入以下命令进入mysql安全模式 mysqld_safe --skip-grant-tables & 4.输入以下命令修改密码,注意末尾的分号必须有,每输入一行就回车 use mysql; update user set password = PASSWORD('你的密码') where user = 'root'; e

Mysql(Linux服务器)root用户密码忘记重置方法

MySQL是非常常见的开源数据库,使用者众多,若是不小心忘记了安装在服务器的mysql密码,无法登陆,应该如何重置呢?方法很简单,现在和大家分享下.(系统环境:CentOs 6.5  软件:Mysql) 1.首先确认服务器是处于安全的状态,也就是没有人能够任意地连接MySQL数据库.因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的状态下. 2.修改MySQL的登录设置: # vi /etc/my.cnf 在[mysqld]的段中加上一句:skip-grant-

MySQL—修改数据库root用户密码

三种方式 linux命令行执行mysqladmin客户端程序 mysql命令行set password命令 mysql命令行update命令 方式一:mysqladmin方式 格式 $ mysqladmin -uuser_name -p'oldPasswd' password 'newPasswd' 其中user_name即为用户名,oldPasswd即为旧密码,newPasswd即为新密码: 示例 $ mysqladmin -uroot -p'1qaz!QAZ' password 123456

mysql 用户/密码/权限操作

由于最近使用mysql遇到了修改用户密码的问题,所以一块学习了一下关于用户的相关操作: 1. 创建新账户 CREATE USER 'jeffrey'@'localhost'; 2. 账户设置密码 #当前用户设置密码 SET PASSWORD = PASSWORD('mypass'); #给指定账户设置密码 SET PASSWORD FOR 'jeffrey'@'localhost' = PASSWORD('mypass'); 3. 给账户赋权限 #赋权限 GRANT ALL ON db1.* T

Linux基础系列(四)系统用户和组管理

Linux系统是一个多用户.多任务的操作系统,任何一个想要使用系统资源的用户,都必须向系统管理员申请一个账号,并授予相应的权限给到这个账号后才能进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问:另一方面也可以帮助用户组织文件,并为用户提供安全性保护. 每个用户账号都拥有一个惟一的用户名和密码.用户只有在提供了正确的用户名和密码之后,才能够进入系统和自己的主目录.(这就类似于我们向银行申请个人账号,银行会为你创建一个个人账号和密码,并只授予你部分业务