1、账户管理

1.1登录和退出MySQL服务器

MySQL –hhostname|hostIP –P port –u username –p[password] databaseName –e “SQL语句”

-h               -h主机名或ip
-P               -Pport[3306]
-u               -u[username]
-p               -p[password]                 注:之间都没有空格!
-e               执行SQL语句                SQL用双引号括起
可以用此语句配合操作系统定时任务,达到自动处理表数据的功能,如定时将某表中过期的数据删除。

例:
登陆:
        mysql -h110.110.110.110 -uroot -p123
 注:本地可以直接:mysql –uroot -p
退出:
        exit、quit

1.2、创建普通用户

1.2.1用CREATE USER创建无权限用户

语法:CREATE USER user [IDENTIFIED BY [PASSWORD] 'password'][, user [IDENTIFIED BY [PASSWORD] 'password']] ...
 
示例:create user test@localhost identified by 'test';//创建一个用户名为test,密码为test的用户,该用户没有任何权限

1.2.2用INSERT语句来新建普通用户

INSERT INTO mysql.user(host,user,password,ssl_cipher,x509_issuer,x509_subject)
VALUES (‘localhost’,’test’,PASSWORD(‘test’),’’,’’,’’);
FLUSH PRIVELEGES;

注:mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。­

1.2.3用GRANT语句来新建普通用户,并授权

1)授权

grant 权限 on 数据库.表 to '用户名'@'登录主机' identified by '密码'

例:
grant select,insert,update,delete on *.* to 'test'@'%';

注:
1)权限:
select ,update,delete,insert(表数据);
create,alert,drop(表结构);
references(外键);
create temporary tables(创建临时表);
index(操作索引);
create view,show view(视图);
create routine,alert routine,execute(存储过程);
all,all privileges(所有权限)

2)数据库:数据库名或者*(所有数据库)
3)表:表名或者*(某数据库下所有表)
4)主机:主机名或者%(任何其他主机)

2)查看权限

show grants;//自己
例: 
show grants for dba@localhost;//指定用户指定host

3)权限收回

revoke 权限 on 数据库.表 from '用户名'@'登录主机';      //注:将to改为from
例:
revoke all on *.* from ‘test’@’%’;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ...

1.3删除普通用户

1)用DROP USER语句来删除普通用户

DROP USER user [,user]…;
例:
drop user ‘test’@’localhost’;

2)用DELETE语句来删除普通用户

DELETE FROM mysql.user WHERE user=’username’ and host=’hostname’;
FLUSH PRIVILEGES;
例:
delete from mysql.user where user='' and host='';

1.4修该用户密码

1.4.1root用户修改自己的密码

1)使用mysqladmin命令来修改root用户的密码

mysqladmin –u username –p password “new_password”; 

2)修改user表

UPDATE mysql.user SET password=PASSWORD(“new_password”) WHERE user=’root’and host=’’;
FLUSH PRIVILEGES

3)使用SET语句来修改root用户的密码

SET PASSWORD=PASSWORD(“new_password”);

1.4.2root用户修改普通用户密码

1)使用mysqladmin命令

不适用,mysqladmin只能修改root 用户密码

2)修改user表

UPDATE mysql.user SET password=PASSWORD(“new_password”) WHERE user=’’ and host=’’;
FLUSH PRIVILEGES;

3)使用SET语句来修改普通用户的密码

SET PASSWORD FOR ‘user’@’localhost’=PASSWORD(“new_password”);

4)用GRANT语句来修改普通用户的密码

GRANT priv_type ON database.table TO user [IDENTIFIED BY [PASSWORD]’password [,user[IDENTIFIED BY [PASSWORD]’password’]]...

1.4.3普通用户修改密码

SET PASSWORD=PASSWORD(“new_password”);

1.4.4、root用户密码丢失的解决办法

1)使用—skip-grant-tables选项来启动MySQL服务
>mysqld –skip-grant-tables
 
#/etc/init.d/mysql start –mysqld –skip-grant-tables
 
2)登录root,设置新密码
mysql –u root
update mysql.user set password=password(“new_password”) where user=’root’and host=’localhost’;
 
3)加载权限表
flush privileges;

链接:

【MySQL笔记】用户管理的更多相关文章

  1. Mysql的用户管理与授权

    Mysql用户管理 本人使用的是Mysql8.0的版本,可能会有一些语句不兼容: 1.用户管理 在Mysql中支持创建账户,并给账户分配权限:例如只拥有数据库A操作的权限.只拥有数据库B中某些表的权限 ...

  2. mysql之用户管理

    本文内容: 用户的介绍 查看用户 创建用户帐户 修改账户 删除帐户 关于匿名用户 首发日期:2018-04-19 用户的介绍: mysql的客户端连接是以用户名来登录服务端. 服务端可以对用户的权限来 ...

  3. MySQL 安装 用户管理 常用命令

    MySQL目录 数据库概览   数据库介绍 Why Choose MySQL MySQL的前世今生 MySQL的安装   Windows安装MySQL5.721 installer版 Windows安 ...

  4. oracle 学习笔记--用户管理

    oracle 用户管理 创建用户(需要具有dba权限的用户) create user 用户名 identified by 密码 defaule tablespace users     //默认表空间 ...

  5. 超哥笔记 -- 用户管理、权限设置、进程管理、中文配置、计划任务和yum源配置(5)

    一 网卡配置 ifconfig 查询.设置网卡和ip等参数 ifup,ifdown    脚本命令,更简单的方式启动关闭网络 ip 符合指令,直接修改上述功能 网络配置文件: /etc/sysconf ...

  6. MySQL:用户管理

    用户管理部分 一.数据库不安全因素 非授权用户对数据库的恶意存取和破坏: 数据库中重要或敏感的数据被泄露: 安全环境的脆弱性: 二.数据库安全的常用方法 用户标识和鉴别[使用口令鉴别]::该方法由系统 ...

  7. 辛星解读mysql的用户管理

    可能做开发的多半不太关注这方面,可是要说到做运维.那就不能不关注了.由于我们都知道,root的权限太大了.不是随便能用的.我们平时最好用一些比較低的权限的用户.这样会让我们的安全性大大提高,也能防止我 ...

  8. Linux学习笔记---用户管理---帐号管理

    root管理 (1)新增用户:useradd -u 指定UID -g 指定GID -G 作为组员添加到某个组 -M 不创建主用户目录 -m 创建主用户目录 -c 用户信息说明列 -d 指定某个目录为主 ...

  9. Linux学习笔记---用户管理---组group

    组管理: (1)/etc/group 格式: 组名:密码:GID:组员

  10. mysql的用户管理(二)

    与权限相关的表由于经常需要用到,所以mysql直接将这些表在mysql启动时写到了内存中,避免每次验证权限时再从磁盘写数据. 当以下条件发生时发refresh权限表信息到内存: 1.对帐户的更改时,如 ...

随机推荐

  1. Java多线程学习(二)synchronized关键字(1)

    转载请备注地址: https://blog.csdn.net/qq_34337272/article/details/79655194 Java多线程学习(二)将分为两篇文章介绍synchronize ...

  2. Python第三方库jieba(中文分词)入门与进阶(官方文档)

    jieba "结巴"中文分词:做最好的 Python 中文分词组件 github:https://github.com/fxsjy/jieba 特点 支持三种分词模式: 精确模式, ...

  3. perl6中函数参数(1)

    sub F($number is copy){ $number++; say $number; } F(); #下面是错误的 sub F($number){ $number++; say $numbe ...

  4. Django 1.10中文文档-第一个应用Part3-视图和模板

    本教程上接Django 1.10中文文档-第一个应用Part2-模型和管理站点.我们将继续开发网页投票这个应用,主要讲如何创建一个对用户开放的界面. 概览 视图是Django应用中的一“类”网页,它通 ...

  5. 64_m2

    mimetic-devel-0.9.8-7.fc26.i686.rpm 12-Feb-2017 05:40 288474 mimetic-devel-0.9.8-7.fc26.x86_64.rpm 1 ...

  6. [How to]使用自定义cell进行tableview的创建,适用于cell样式不发生变化的情况。

    1.简介 在tableview中又默认的cell格式,其中组织如下: <截取自官网文档> 最终的在页面上默认的cell也只能像上述那样的显示效果,如果这种要是无法满足我们的界面要求,那么我 ...

  7. ArcGIS Server配置端口

    写在前面,GIS服务器必须连通到外网,基于某些情况,可能一个机组有多态服务器,担任不同的角色,有Web服务器.数据库服务器和GIS服务器等,但是可能购买时只有一个外网IP,这样是不行的.JS脚本运行在 ...

  8. django开发项目实例2--如何链接图片和css文件(静态文件)

    在上一篇随笔里面,我们已经介绍了如何从零开始用django建立一个项目并且初步运行以来了, 现在我们就要开始写我们的html了,也就是django里面的模板了,不过这节我们只讲如何链接图片和css(静 ...

  9. 线程同步工具 Semaphore类使用案例

    参考博文 : 线程同步工具(一) 线程同步工具(二)控制并发访问多个资源 并发工具类(三)控制并发线程数的Semaphore 使用Semaphore模拟互斥锁 当一个线程想要访问某个共享资源,首先,它 ...

  10. go run/ go install/ go build / go get的区别

    go run 运行当个.go文件 go install 在编译源代码之后还安装到指定的目录 go build 加上可编译的go源文件可以得到一个可执行文件 go get = git clone + g ...