mysql创建用户及授权

 

创建本地账号

  create user 'egon1'@'localhost' identified by '123';  # mysql -uegon1 -p123

创建远程账号

  create user 'egon2'@'192.168.31.10' identified by '123';  # mysql -uegon2 -p123 -h 服务端ip

  create user 'egon2'@'192.168.31.%' identified by '123';  # mysql -uegon2 -p123 -h 服务端ip,能在31网段的任意服务器上登录sql

 

授权

  user:*.*  所有库表

select * from mysql.user  # 查看用户信息

grant select on *.* to 'egon1'@'localhost'    # 给egon1授权select所有表的权限

grant all privileges on *.* to 'egon1'@'localhost'

revoke select  on *.* from 'egon1'@'localhost'    # 回收权限

  db:*  某个库

select * from mysql.db\G    # 查看db信息

grant select on db1.*  to 'egon1'@'localhost' ;  # 授权egon1只对db1有查询权限

revoke select on db1.*  from 'egon1'@'localhost' ;

  tables_priv:db1.t1  某个表

select * from mysql.tables_priv\G    # 查询表权限信息,未设时该表为空

grant select on db1.t1  to 'egon1'@'localhost' ;  # 授权egon1只对db1.t1有查询权限

revoke select on db1.*t1  from 'egon1'@'localhost' 

  columns_priv: 某列

select * from mysql.columns_priv;    # 查询列权限信息,未设时该表为空

grant select(id,name),update(age) on db1.t1  to 'egon1'@'localhost' ;  

权限有以下种类:

       all privileges  除grant外的所有权限
            select          仅查权限
            select,insert   查和插入权限
            ...
            usage                   无访问权限
            alter                   使用alter table
            alter routine           使用alter procedure和drop procedure
            create                  使用create table
            create routine          使用create procedure
            create temporary tables 使用create temporary tables
            create user             使用create user、drop user、rename user和revoke  all privileges
            create view             使用create view
            delete                  使用delete
            drop                    使用drop table
            execute                 使用call和存储过程
            file                    使用select into outfile 和 load data infile
            grant option            使用grant 和 revoke
            index                   使用index
            insert                  使用insert
            lock tables             使用lock table
            process                 使用show full processlist
            select                  使用select
            show databases          使用show databases
            show view               使用show view
            update                  使用update
            reload                  使用flush
            shutdown                使用mysqladmin shutdown(关闭MySQL)
            super                   􏱂􏰈使用change master、kill、logs、purge、master和set global。还允许mysqladmin􏵗􏵘􏲊􏲋调试登陆
            replication client      服务器位置的访问
            replication slave       由复制从属使用

 

posted @ 2018-03-15 14:08  Claire_xu  阅读(262)  评论(0编辑  收藏  举报