一、mysql用户登录

mysql –u用户名 [–h主机名或者IP地址] –p密码

说明:用户名是你登录的用 户,主机名或者IP地址为可选项,如果是本地连接则不需要,远程连接需要填写,密码是对应用户的密码。

注意:

1. 该命令是在Windows命令行窗口下执行,而不是MySQL的命令行;

2.输入-p 后可以直接跟上密码,也可以按回车,会提示你输入密码,二者都是相同的效果;

3. –p密码选项不 一定是要在最后;

4. –u、-h、-p后无空格。

二、mysql创建用户

mysql> grant all privileges on mq.* to lou@localhost identified by '1234';

或者分开执行:

命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';

例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';

CREATE USER 'dog2'@'localhost' IDENTIFIED BY '';

PS:username - 你将创建的用户名,

host - 指定该用户在哪个主机上可以登陆,此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录,如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录;也可以指定某台机器可以远程登录;

password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器。

三、授权:

命令:GRANT privileges ON databasename.tablename TO 'username'@'host'

PS: privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.

例子: GRANT SELECT, INSERT ON mq.* TO 'dog'@'localhost';

四.设置与更改用户密码

命令:SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

例子: SET PASSWORD FOR 'dog2'@'localhost' = PASSWORD("dog");

五.撤销用户权限

命令: REVOKE privilege ON databasename.tablename FROM 'username'@'host';

说明: privilege, databasename, tablename - 同授权部分.

例子: REVOKE SELECT ON mq.* FROM 'dog2'@'localhost';

PS: 假如你在给用户'dog'@'localhost''授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO 'dog'@'localhost', 则在使用REVOKE SELECT ON *.* FROM 'dog'@'localhost';命令并不能撤销该用户对test数据库中user表的SELECT 操作.相反,如果授权使用的是GRANT SELECT ON *.* TO 'dog'@'localhost';则REVOKE SELECT ON test.user FROM 'dog'@'localhost';命令也不能撤销该用户对test数据库中user表的Select 权限.

具体信息可以用命令SHOW GRANTS FOR 'dog'@'localhost'; 查看.

六.删除用户

命令: DROP USER 'username'@'host';

七.查看用户的授权

mysql> show grants for dog@localhost;
+---------------------------------------------+
| Grants for dog@localhost |
+---------------------------------------------+
| GRANT USAGE ON *.* TO 'dog'@'localhost' |
| GRANT INSERT ON `mq`.* TO 'dog'@'localhost' |
+---------------------------------------------+
2 rows in set (0.00 sec)

PS:GRANT USAGE:mysql usage权限就是空权限,默认create user的权限,只能连库,啥也不能干

另:修改完用户权限最好执行下flush privileges 命令,本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。通常是在修改ROOT帐号的设置后,怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否生效。而不必冒太大风险。

最新文章

  1. 下载aptana插件jar包
  2. asp.net sqlite 当插入数据后的第一次访问会变的很慢!
  3. archlinux 安装手记
  4. SQL 编程
  5. Ubuntu14.04下jdk的安装
  6. resx文件在X64位编译,提示“未能加载文件或程序集”的问题?
  7. 如何做一个avalon组件
  8. IOC和AOP的基础原理
  9. poj1222 EXTENDED LIGHTS OUT
  10. Python伪开发者对于搜狐云景的测评
  11. 清理Win8.1更新冗余的批处理代码
  12. openjdk7之编译和debug
  13. 痞子衡嵌入式:飞思卡尔Kinetis系列MCU启动那些事(9)- KBOOT特性(IntegrityCheck)
  14. python--继承--方法的重写---和父类的扩展
  15. .NET CORE学习笔记系列(4)——ASP.NET CORE 程序启用SSL
  16. spring-config的坑
  17. js转换Date日期格式
  18. 树形DP(记忆化搜索) HYSBZ - 1509
  19. [Visual Studio] 记一次排错:打不开 Nuget 包管理器里的安装package页面,无法 安装 / 恢复 包
  20. 2、图文讲解.NET CLR是什么

热门文章

  1. git 撤回上一次commit中某一个不想添加的文件
  2. spring的自动装配Bean与自动检测Bean
  3. highcharts中放aqi及6要素,再加上气象5要素的图
  4. Ext.Ajax.request批量提交表单
  5. Oracle内部latch获取函数简介
  6. Android 你应该注意的开发规范
  7. android清除缓存为什么总是存在12k?
  8. 基于GPU加速的三维空间分析【转】
  9. caffe版faster-RCNN环境搭建
  10. Hadoop 2.2.0集群搭建