前言

From :https://blog.csdn.net/yu12377/article/details/78214336

mysql5.7版本中用户管理与以前版本略有不同,在此记录,以备忘

登陆

[root@ver ~]# mysql -h  -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id
Server version:  Source distribution

Copyright (c) , , 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>

参数说明:
-h: 指定数据库IP地址;
-P: 指定端口,默认的3306时,可以忽略;
-u: 指定登陆用户名;
-p: 指定登陆密码(小写,注意与指定端口的大写P区分);

指定操作数据库

mysql> show databases;  # 查看所有数据库
+--------------------+
| Database           |
+--------------------+
| information_schema |
| fhgk               |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
 rows in set (0.01 sec)

mysql> use mysql    # 指定当前操作的数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql>

创建用户

# 创建用户
mysql> CREATE USER 'username'@'host' IDENTIFIED BY 'password';

# 删除用户
mysql> DROP USER 'username'@'host';

host参数说明:
% 匹配所有主机
localhost localhost不会被解析成IP地址,直接通过UNIXsocket连接
127.0.0.1 会通过TCP/IP协议连接,并且只能在本机访问;
::1 ::1就是兼容支持ipv6的,表示同ipv4的127.0.0.1

此时还没有授权,只能登陆,无法做其余操作

用户授权

# 用户授权
mysql> grant privileges ON databasename.* TO 'username'@'host';

# 创建用户的同时授权
mysql> grant all privileges on databasename.* to ';

# 授权刷新
mysql> flush privileges;

# 查看用户拥有权限
mysql> show grants for dev@'%';
+----------------------------------------------------------------------+
| Grants for dev@%                                                     |
+----------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'dev'@'%'                                      |
| GRANT SELECT, INSERT, UPDATE, DELETE, ALTER ON `fhgk`.* TO 'dev'@'%' |
+----------------------------------------------------------------------+
 rows in set (0.00 sec)

# 撤消用户授权,撤消要求各参数与授权时使用的一致,可以相查看授权再撤消
mysql> revoke privileges ON databasename.* FROM 'username'@'host';
privileges参数说明:
all privileges: 所有权限;
select: 查询;
insert: 新增记录;
update: 更新记录;
delete: 删除记录;
create: 创建表;
drop: 删除表;
alter: 修改表结构;
index: 索引相关权限;
execute: 执行存储过程与call函数
references: 外键相关;
create temporary tables:创建临时表;
lock tables 锁表;
create view 创建视图;
show view 查看视图结构;
create routine
alter routine:
event:
trigger: 触发器相关;

databasename.*参数说明:
此处可以针对具体的某个库,如:【zjims.*】;
也可以针对具体库中的某个对象,如:【zjims.t_user】;
还可以针对所有数据库,如:【.】;

修改密码

# 修改自己的密码
mysql> set password=password('newpassword');

# 修改别人密码——方法1
mysql> set password for 'username'@'host' = password('newpassword');

# 修改别人密码——方法2: 适用mysql5.7以前的版本,.7以后的版本中mysql.user表没有了password字段
mysql> update mysq.user set password=password('newpassword') where user='user' and host='host';
# 修改别人密码——方法3:适用mysql5.
mysql> update mysql.user set authentication_string=password('newpassword') where user='root';

# 修改别人密码——方法4
mysql> alter user 'test'@'%' identified by 'newpassword';

重置管理员密码

  1. 停止mysql服务:service mysqld stop 或 ./mysql.server stop;
  2. 以不检查权限方式启动mysql:./mysqld –skip-grant-tables –user=mysql &;
  3. 以空密码方式登陆:mysql -h 127.0.0.1 -P 3306 -u root;
  4. mysql5.7以前版本——修改root密码:update mysq.user set password=password(‘newpassword’) where user=’root’;
  5. mysql5.7以后版本——修改root密码:update mysql.user set authentication_string=password(‘newpassword’) where user=’root’;(只能用此种update方法修改)
  6. 刷新权限:flush privileges;
  7. 关闭mysql:shutdown;
  8. 以正常方式启动mysql: service mysqld start 或 ./mysql.server start;

参考资料

  1. http://www.cnblogs.com/fslnet/p/3143344.html
  2. http://www.cnblogs.com/xujishou/p/6306765.html
  3. http://www.cnblogs.com/4php/p/4113593.html

[转帖] mysql 用户 权限 密码等操作记录的更多相关文章

  1. mysql用户权限操作

    mysql用户权限操作1.创建用户mysql -urootcreate database zabbix default charset utf8;grant all on zabbix.* to za ...

  2. (转)mysql账号权限密码设置方法

    原文:http://www.greensoftcode.net/techntxt/2013410134247568042483 mysql账号权限密码设置方法 我的mysql安装在c:\mysql 一 ...

  3. MySQL——用户与密码

    mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码.通过下面的方式找到root默认密码,然后登录mysql进行修改: grep 'temporary p ...

  4. mysql用户权限

    mysql> show grants for root@'localhost';+-------------------------------------------------------- ...

  5. MySQL 用户登录密码和远程登录权限问题

    1.mysql数据库,忘记root用户登录密码. 解决如下: a.重置密码 #/etc/init.d/mysqld stop #mysqld_safe --user=mysql --skip-gran ...

  6. 在Windows下忘记MySQL最高用户权限密码的解决方案

    1.打开MySQL配置文件 my.ini中,添加上skip-grant-tables,可以添加到文件的末尾或者是这添加到[mysqld]的下面(直接添加在my.ini文件最后亲测可以,但是在[mysq ...

  7. mysql用户权限设置

    1.创建新用户 通过root用户登录之后创建 >> grant all privileges on *.* to testuser@localhost identified by &quo ...

  8. mysql 用户权限设置【转】

    在Linux下phpStudy集成开发环境中,要先进入mysql下bin目录,执行mysql ./mysql -u root -p 1.创建新用户 通过root用户登录之后创建 >> gr ...

  9. 转 MySQL 用户权限详细汇总

    http://blog.csdn.net/mchdba/article/details/45934981 1,MySQL权限体系 MySQL 的权限体系大致分为5个层级: 全局层级: 全局权限适用于一 ...

随机推荐

  1. js_script

    使用 self.crawl 的 js_script 参数,在页面上执行一段脚本,实现[点击加载更多]的效果: def on_start(self): self.crawl('http://movie. ...

  2. VC++环境下单文档SDI与OpenGL多视图分割窗口的实现-类似3DMAX的主界面

    本文主要讲述如何在VC++环境下实现单文档SDI与OpenGL多视图分割窗口,最终的界面类似3DMAX的主界面.首先给出我实现的效果图: 整个实现过程网络上有很多零散的博文,请各位自行搜索,在基于对话 ...

  3. Python基础(11)——反射、异常处理

    1.反射 以下均是对对象的操作,而不是对类 class Foo(object): def __init__(self): self.name = 'wupeiqi' def func(self): r ...

  4. scrapy (三)各部分意义及框架示意图详解

    一.框架示意图 Scrapy由 Python 编写,是一个快速.高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试 ...

  5. loadrunner中pacing设置01

    之前一直也用pacing值来调节TPS,一直觉得它和think time没啥区别.这次项目中,和同事就此展开了讨论,细细一研究发现pacing值门道还是很多的. 如下面三个图: 上图是pacing的三 ...

  6. zabbix items 配置

    item是什么?它是我们对于host监控的基本条目,它属于不同的applications中,item的设置既可以针对具体的某个host主机,也可以针对模板进行设定(可以在多个主机进行复用). item ...

  7. day61

    Vue 八.重要指令 v-bind <!-- 值a --> <div v-bind:class='"a"'></div> <!-- 变量a ...

  8. 关于C#中async/await中的异常处理(上)-(转载)

    在同步编程中,一旦出现错误就会抛出异常,我们可以使用try…catch来捕捉异常,而未被捕获的异常则会不断向上传递,形成一个简单而统一的错误处理机制.不过对于异步编程来说,异常处理一直是件麻烦的事情, ...

  9. 20155325 Exp9 Web安全基础

    本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 实验后回答问题 (1)SQL注入攻击原理,如何防御 原理:SQL注入即是指web应用程序对用户输入数据的合法性没有判断,攻击 ...

  10. 20155338 《网络攻防》Exp5 MSF基础应用

    20155338 <网络攻防>Exp5 MSF基础应用 基础问题回答 1. 用自己的话解释什么是exploit,payload,encode? exploit将真正要负责攻击的代码传送到靶 ...