mysql用户创建,及授权

1、首先查看系统中所有的用户:
   select host,user from mysql.user;

2、删除系统的多余帐号语法drop user"user"@"主机域" 注意引号,可以是单或双引号;
   范例: drop user ‘‘@‘moban2‘
   #如果为空直接为空即可;
   #如果drop删除不了(一般是特殊字符或大写),可以用下面的方式删除:
   范例:delete from mysql.user where user=‘root‘ and host=‘127.0.0.0.1‘;

3、创建用户的时候最好首先通过help查看grant命令帮助:
    CREATE USER ‘jeffrey‘@‘localhost‘ IDENTIFIED BY ‘mypass‘;
    GRANT ALL ON db1.* TO ‘jeffrey‘@‘localhost‘;
    GRANT SELECT ON db2.invoice TO ‘jeffrey‘@‘localhost‘;
    GRANT USAGE ON *.* TO ‘jeffrey‘@‘localhost‘ WITH MAX_QUERIES_PER_HOUR 90;

4、运维人员常用的创建方法,使用grant命令创建用户的时,进行权限授权:
    范例:grant all privileges  on db1.* to [email protected] identified by "password";
    # grant    all privileges on db1.*  to [email protected]  identified     by‘passwd‘       授权命令  对应权限(all所有权限)      目标:库和表用户名和客户端主机    用户密码

5、授权完毕后要刷新权限:

flush privileges;

6、查看创建的用户:

select host,user from mysql.user;

7、查看创建用户的权限: show grants for [email protected];
   #USAGE 表示用户只可以登录,没有其它权限,操作的时候显示Access denied;



或者:
     查看帮助:help create user
               CREATE USER ‘jeffrey‘@‘localhost‘
               IDENTIFIED WITH my_auth_plugin;
     先创建用户

create user  [email protected] identified by "password";
      查看用户权限:

show grants for [email protected];
     在授权:

grant all on dbname.* to [email protected];
      查看权限:

show grants for [email protected];



8、授权局域网内主机远程连接数据库,常见的使用%匹配方法:
   范例: grant all on   *.* to  [email protected]‘10.10.36.%‘ identified by "123456";
   刷新权限:flush privileges;
   登录使用-h指定主机,-P指定端口

范例:mysql -u  username_2 -p -h 10.10.36.170



确定mysql 可以授权的权限,如果不知道可以这样:
⑴帮助查看:help revoke (权限收回)

REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ...
⑵权限查看:show grants for [email protected];
⑶收回插入权限:revoke insert  on  *.* from ‘user_name‘@‘localhost‘;
  #注意此处指定数据库
⑷登录数据库后权限查看:show grants for [email protected];
⑸退出数据库后: mysql -uroot -p123456 -e "show grants for "username"@"localhost";" | grep -i grant  | tail -1|tr ‘,‘ ‘\n‘ >all.privileges
以下为数据库中的权限:
SELECT 查询\INSERT 插入 \UPDATE 更新\DELETE 删除 \CREATE 创建库和表\DROP    删除库和表\INDEX    索引\ALTER    修改 \CREATE TEMPORARY TABLES 创建临时表\ LOCK TABLES    锁表\ EXECUTE    执行\ CREATE VIEW    创建视图\ SHOW VIEW    显示视图\ CREATE ROUTINE 创建存储过程\ALTER ROUTINE    修改存储过程\ EVENT         事件\ TRIGGER     触发器
或者:select * from mysql.user\G;



9、针对博客、cms 等产品安装期间要采用最下话原则 :除了select,insert,update,delete4个权

限外,还需要create,drop等危险权限
   范例:grant select,insert,update,delete,create,drop on blog.* to [email protected]‘10.10.36.%‘

identified by "password";

10、生产数据库后收回权限(最好评估):
    范例:revoke create,drop on blog.*  from [email protected]‘10.10.36.%‘;

主从数据库权限设定慢慢在补。

时间: 2024-10-24 12:14:38

mysql用户创建,及授权的相关文章

mysql用户创建、授权

#test表示你要建立的用户名,后面的123表示密码 #用户可以在任何地方登陆 mysql> create user test identified by'123'; #限制在固定地址登陆 mysql> create user [email protected] identified by '123'; #格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码" mysql> grant all on *.* to

MySql用户创建、授权以及删除

The create user command: <!---->mysql> CREATE USER yy IDENTIFIED BY '123'; yy表示你要建立的用户名,后面的123表示密码 上面建立的用户可以在任何地方登陆. 如果要限制在固定地址登陆,比如localhost 登陆: <!---->mysql> CREATE USER yy@localhost IDENTIFIED BY '123'; grant: <!---->mysql> G

mysql用户管理及授权管理

mysql用户和权限管理 mysqld进程在启动的时候,将table,host,db,table_privs,clumn_privs,procs_privs,proxies_privs载入内存. 用户账号: 用户名+主机 用户名:16字符以内. 主机: 主机名: mytest IP地址:172.168.1.20 网络地址:172.168.1.0/255.255.0.0 通配符: 172.168.%.% 172.168.1.2__ %.qq.com,注如果是域名,则mysql需要进行解析,如果取消

Oracle12C用户创建、授权、登录

col pdb_name for a30 Oracle12C用户创建.授权.登录 1.以系统用户登录 命令 sqlplus sys/dwh as sysdba; 2. 确认选择CDB select name,cdb from v$database; col pdb_name for a30 select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs; select con_id,dbid,NAME,OPEN_MODE from v$

Centos7中 mysql5.7 用户 创建 、授权、远程登录

1.添加用户跟以往版本不同,MySQL5.7 mysql.user表没有password字段,这个字段改成了 authentication_string:这里我们使用命令进行创建用户:  CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 如创建一个test用户,密码为test123,可以进行远程登录:  create user 'test'@'%' identified by 'test123' username - 你将创建的用户名

应用Oracle(用户创建和授权)

使用oracle命令创建用户,并授权. 系统管理员身份登录 cmd中, sqlplus / as sysdba 若登录失败,则 sqlplus system/[数据库创建时指定密码] as sysdba 创建用户,病指定密码 create user suzhw identified by [密码]; 授权 grant dba to suzhw; 注意,此处授予用户suzhw最高权限 实际操作时,可按需授予权限 测试 cmd中, sqlplus suzhw/[密码] 注意,上述命令需要先退出当前用

mysql 用户创建,修改和忘记root密码的操作

#创建用户CREATE USER 'zzq'@'localhost' IDENTIFIED by 'zzq';#flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里.#MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令.#通常是在修改ROOT帐号的设置后,怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否

MYSQL账号创建,授权,删除

一, 创建用户: 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器. 例子: CREATE USER 'dog'@'localhost' IDE

oracle用户创建和授权(一)

1.请输入用户名: sys as sysdba2.输入口令: 1234563.创建用户:create user admin identified by admin;4.授权建立表:grant create table to admin;5.授权删除表 : grant drop any table to admin;6.授权插入表:grant insert any table to admin;7.授权更新表:grant update any table to admin;