澳门新葡萄京娱乐网站-澳门新葡萄京888官网-所有平台

热门关键词: 澳门新葡萄京娱乐网站,澳门新葡萄京888官网

点名叁个数据库,顾客管理与权力调节

作者: MySQL数据库  发布:2019-12-11

权力管理

咱俩知道大家的万丈权力处理者是root顾客,它具有着最高的权柄操作。满含select、update、delete、update、grant等操作。那么平时情形在集团然后DBA程序员会创设四个客户和密码,让你去老是数据库的操作,并给当下的客商设置有些操作的权力(或许具备权力)。那么当时就需求大家来总结精晓一下:

  • 怎么着成立客商和密码
  • 给当下的客户授权
  • 移除当前客商的权杖

假定您想成立一个新的客户,则须求以下操作:

1.进去到mysql数据库下

mysql> use mysql
Database changed

2.对新客户增加和删除改

图片 1

1.创建用户:
# 指定ip:192.118.1.1的mjj用户登录
create user 'mjj'@'192.118.1.1' identified by '123';
# 指定ip:192.118.1.开头的mjj用户登录
create user 'mjj'@'192.118.1.%' identified by '123';
# 指定任何ip的mjj用户登录
create user 'mjj'@'%' identified by '123';

2.删除用户
drop user '用户名'@'IP地址';


3.修改用户
rename user '用户名'@'IP地址' to '新用户名'@'IP地址';

4.修改密码
set password for '用户名'@'IP地址'=Password('新密码');

5,查看mysql中的所有用户
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

6,查看user表结构 需要具体的项可结合表结构来查询
 desc mysql.user;

图片 2

 

3.对当前的客商授权管理

图片 3

#查看权限
show grants for '用户'@'IP地址'

#授权 mjj用户仅对db1.t1文件有查询、插入和更新的操作
grant select ,insert,update on db1.t1 to "mjj"@'%';

# 表示有所有的权限,除了grant这个命令,这个命令是root才有的。mjj用户对db1下的t1文件有任意操作
grant all privileges  on db1.t1 to "mjj"@'%';
#mjj用户对db1数据库中的文件执行任何操作

grant all privileges  on db1.* to "mjj"@'%';
#mjj用户对所有数据库中文件有任何操作

grant all privileges  on *.*  to "mjj"@'%';

 

#取消权限

 

# 取消mjj用户对db1的t1文件的任意操作
revoke all on db1.t1 from 'mjj'@"%";  

# 取消来自远程服务器的mjj用户对数据库db1的所有表的所有权限

revoke all on db1.* from 'mjj'@"%";  

取消来自远程服务器的mjj用户所有数据库的所有的表的权限
revoke all privileges on *.* from 'mjj'@'%';

图片 4

ps:在信用合作社中,平常情状下是DBA程序猿来做这个授权工作。给您八个客户名和密码,你来连接就足以了。

 

 

4.MySql备份命令行操作

图片 5

# 备份:数据表结构+数据
mysqldump -u root db1 > db1.sql -p


# 备份:数据表结构
mysqldump -u root -d db1 > db1.sql -p

#导入现有的数据到某个数据库
#1.先创建一个新的数据库
create database db10;
# 2.将已有的数据库文件导入到db10数据库中
mysql -u root db10 < db1.sql -p

图片 6

Oracle 客户处理与权力决定

oracle数据库的权能系统一分配为系统权限与对象权限。系统权限( database system privilege 卡塔尔(قطر‎能够让顾客实施一定的命令集。举例,create table权限允许客户创制表,grant any privilege 权限允许顾客授予任何系统权限。对象权限( database object privilege 卡塔尔国能够让顾客能够对各类对象开展一些操作。举个例子delete权限允许客商删除表或视图的行,select权限允许客户通过select从表、视图、连串(sequences卡塔尔国或快速照相(snapshots卡塔尔(قطر‎中查询音信。 
  各种oracle客户都有二个名字和口令,并拥有一点由其创建的表、视图和别的国资本源。oracle剧中人物(role卡塔尔(قطر‎就是大器晚成组权限(privilege卡塔尔(英语:State of Qatar)(或许是各种顾客依照其情况和规范所需的拜见类型卡塔尔国。客商能够给剧中人物付与或授予钦赐的权力,然后将剧中人物赋给相应的客户。五个客户也得以平素给别的顾客授权。 

ORACLE中多少字典视图分为3大类,用前缀差异,分别为:USE奔驰G级,ALL 和 DBA,
过好些个量字典视图包罗相同的音信。

USER_*:有关顾客所怀有的指标新闻,即客户本身创立的靶子音讯。
ALL_*:有关客户能够访谈的对象的新闻,即客户自己创造的指标的音讯增多其余顾客创造的靶子但该顾客有权访谈的音讯。
DBA_*:有关任何数据库中目的的新闻。 

1.远程登陆mysql

豆蔻梢头、顾客管理

mysql -h ip -u root -p 密码

1、查询客商

select username from dba_users;

询问全部客户

select * from all_users

询问当前顾客音讯:

select * from user_users

结果:

图片 7

系统顾客:

sys;//系统管理员,具备最高权力

system;//本地管理员,次高权限

scott;//普通客户,密码默以为tiger,私下认可未解锁

 

2.创立顾客

2、创制顾客

create user username identified by password;

username: 用户名,自定义

password: 密码,自定义

 

格式:grant 权限 on 数据库.* to 客商名@登入主机 identified by “密码”;

3、删除客商

drop user username;

就算顾客已经具备和睦的靶子,则须要采纳:cascade(级联卡塔尔国。可防止强删除客商的具有目的,然后删除客户。

drop user username cascade;

例1:增添一个test1客户,密码为123456,能够在别的主机上登陆,并对全部数据库有询问,扩充,修正和删除的功效。须求在mysql的root顾客下开展

二、权限管理

mysql>grant select,insert,update,delete on *.* to test1@”%” identified by “123456″;

1、授权

将权限授权给有些用户。

宗旨用法:

grant  权限   to  用户

授权dba

grant dba to username

示例:

图片 8

授权连接和能源

grant connect,resource to demo;   //授权连接、资源

授权可成立session,能够在服务器上进行连接

grant create session to demo;

运用测验:

图片 9

 

授权创制、查询、更新、删除表的权柄:

grant create any table to demo; //创建表

grant drop any table to demo; //删除表

grant alter any table to demo; //修改表

授权实行存款和储蓄进度:

grant execute any procedure to demo

 

授权数据权限:

grant insert any table to demo; //增加数据

grant delete any table to demo; //删除数据

grant update any table to demo; //更新数据

grant select any table to demo; //查询数据

授权具体的表权限:

grant select on demo.students on demo; //将查询students的权限授权给demo

grant update on demo.students to demo;

 

mysql>flush privileges;

2、撤消权限

revoke

主干用法:

revoke  权限  from  用户

撤销dba权限

revoke dba from demo;

撤回连接取取权限

revoke connect from demo

打消创设表权限

revoke create any table from demo;

裁撤某表的权限

revoke all on demo.students from demo;

例2:扩展三个test2客户,密码为123456,只可以在192.168.2.12上登入,并对数据库student有询问,增添,校勘和删除的效果与利益。须要在mysql的root客商下进展

 3、查询各样权力

询问系统全部权力

select * from system_privilege_map

查询全体目的权限

select * from table_privilege_map

查询角色有所的权能

select * from role_sys_privs;

 

select * from role_tab_privs 

 

查询客商系统权限

select * from dba_sys_privs;
select * from all_sys_privs;
select * from user_sys_privs;

查询顾客对象权限

select * from dba_tab_privs;

select * from all_tab_privs;

select * from user_tab_privs;

 

mysql>grant select,insert,update,delete on student.* to test2@192.168.2.12 identified by “123456″;

三、角色

  Oracle为了同盟从前的本子,提供了二种规范的剧中人物(role卡塔尔国:connect、resource和dba。
  1. connect role(连接角色卡塔尔(英语:State of Qatar)
  有的时候客户,极其是那多少个无需建表的顾客,常常只授予他们connectrole。connect是接受oracle的简要权限,这种权力独有在对其余客户的表有访谈权时,包罗select、insert、update和delete等,才会变得有意义。具有connect role的客商仍能够制造表、视图、体系(sequence卡塔尔(英语:State of Qatar)、簇(cluster卡塔尔(英语:State of Qatar)、同义词(synonym 卡塔尔(قطر‎、会话(session卡塔尔国和与别的数据库的链(link卡塔尔(قطر‎。
  2. resource role(财富角色卡塔尔(英语:State of Qatar)
  更可相信和标准的数据库顾客能够授予resource role。resource提要求客商此外的权杖以创立他们本身的表、系列、进度(procedure卡塔尔(قطر‎、触发器(trigger卡塔尔(英语:State of Qatar)、索引(index卡塔尔国和簇(cluster卡塔尔。
  3. dba role(数据库助理馆员角色卡塔尔(英语:State of Qatar)
  dba role具有全体的体系权限,包蕴无界定的空中限额和给其余客户授予各个权力的力量。system由dba客商全体。

1、创造角色

create role backer

2、授权

grant select any table to backer

3、撤销

revoke update any table from backer

4、分配剧中人物,将角色权限赋予给客商

grant backer to demo

5、将剧中人物权限赋予别的剧中人物

grant backer to backer2

6、删除剧中人物

drop role backer2

示例:

图片 10

查询全部剧中人物

select * from dba_roles

查询结果

图片 11

查阅当前客商角色

select * from role_sys_privs

翻开当前客户管理的剧中人物

select * from user_role_privs

图片 12

 

select * from dba_role_privs

 

mysql>flush privileges;

例3:授权顾客test3具备数据库student的富有权限

mysql>grant all privileges on student.* to test3@localhost identified by ’123456′;

mysql>flush privileges;

3.改动客户密码

mysql>update mysql.user set password=password(’123456′) where User=’test1′ and Host=’localhost’;

mysql>flush privileges;

4.去除顾客

mysql>delete from user where user=’test2′ and host=’localhost’;

mysql>flush privileges;

5.删减数据库和删除表

mysql>drop database 数据库名;

mysql>drop table 表名;

6.删减账户及权限

drop user 用户名@’%’

drop user 用户名@localhost

**************************************************************************************

grant 详细剖判如下:

**************************************************************************************

MySQL 付与顾客权限命令的简要格式可回顾为:

grant 权限 on 数据库对象 to 客商

风姿洒脱、grant 普通数据客商,查询、插入、更新、删除 数据库中具备表数据的义务。

grant select on testdb.* to common_user@’%’

grant insert on testdb.* to common_user@’%’

grant update on testdb.* to common_user@’%’

grant delete on testdb.* to common_user@’%’

如故,用一条 MySQL 命令来替代:

grant select, insert, update, delete on testdb.* to common_user@’%’

二、grant 数据库开采人士,创造表、索引、视图、存款和储蓄进程、函数。。。等权限。

grant 创设、改善、删除 MySQL 数据表布局权限。

grant create on testdb.* to developer@’192.168.0.%’;

grant alter on testdb.* to developer@’192.168.0.%’;

grant drop on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 外键权限。

grant references on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 有的时候表权限。

grant create temporary tables on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 索引权限。

grant index on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 视图、查看视图源代码 权限。

grant create view on testdb.* to developer@’192.168.0.%’;

grant show view on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 存款和储蓄进度、函数 权限。

grant create routine on testdb.* to developer@’192.168.0.%’; — now, can show procedure status

grant alter routine on testdb.* to developer@’192.168.0.%’; — now, you can drop a procedure

grant execute on testdb.* to developer@’192.168.0.%’;

三、grant 普通 DBA 管理有个别 MySQL 数据库的权杖。

grant all privileges on testdb to dba@’localhost’

里头,关键字 “privileges” 能够总结。

四、grant 高档 DBA 处理 MySQL 中持有数据库的权杖。

grant all on *.* to dba@’localhost’

五、MySQL grant 权限,分别能够成效在八个档次上。

  1. grant 成效在整整 MySQL 服务器上:

grant select on *.* to dba@localhost; — dba 能够查询 MySQL 中全数数据库中的表。

grant all on *.* to dba@localhost; — dba 能够管理 MySQL 中的全部数据库

  1. grant 功效在单个数据库上:

grant select on testdb.* to dba@localhost; — dba 能够查询 testdb 中的表。

  1. grant 功能在单个数据表上:

grant select, insert, update, delete on testdb.orders to dba@localhost;

  1. grant 功用在表中的列上:

grant select(id, se, rank) on testdb.apache_log to dba@localhost;

  1. grant 效率在蕴藏进程、函数上:

grant execute on procedure testdb.pr_add to ‘dba’@’localhost’

grant execute on function testdb.fn_add to ‘dba’@’localhost’

六、查看 MySQL 客商权限

查阅当前客户(自身)权限:

show grants;

翻开别的 MySQL 客户权限:

show grants for dba@localhost;

七、撤废已经付与给 MySQL 客户权限的权限。

revoke 跟 grant 的语法大致,只需求把首要字 “to” 换来 “from” 就能够:

grant all on *.* to dba@localhost;

revoke all on *.* from dba@localhost;

八、MySQL grant、revoke 客户权限注意事项

  1. grant, revoke 客商权限后,该顾客独有重新连接 MySQL 数据库,权限本领见到效果。

  2. 风流倜傥旦想让授权的顾客,也得以将那个权限 grant 给别的顾客,必要选项 “grant option“

grant select on testdb.* to dba@localhost with grant option;

其后生可畏本性平常用不到。实际中,数据库权限最佳由 DBA 来归总保管。

Category: Post

You can follow any responses to this entry via RSS.

Comments are currently closed, but you can trackback from your own site.

=========================================================================

1.创立顾客并授权

grant语句的语法:

grant privileges (columns) on what to user identified by “password” with grant option

要利用该句型,需显明字段有:

privileges 权限钦定符权限允许的操作

alter 校正表和目录

create 成立数据库和表

delete 删除表中已部分记录

drop 扬弃(删除)数据库和表

index 成立或丢掉索引

insert 向表中插入新行

reference 未用

select 检索表中的记录

update 校勘现有表记录

file 读或写服务器上的公文

process 查看服务器中奉行的线程新闻或杀死线程

reload 重载授权表或清空日志、主机缓存或表缓存。

shutdown 关闭服务器

all 所有;

all privileges同义词

usage 特殊的“无权限”权限

上述权限分三组:

先是组:适用于数据库、表和列如:alter create delete drop index insert select update

其次组:数管理权限 它们允许顾客影响服务器的操作 需严厉地授权 如:file process reload shut*

其三组:权限特殊 all意味着“全部权力” uasge意味着无权限,即开立客商,但不付与权限

columns

权力行使的列(可选卡塔尔并且你一定要设置列特定的权能。要是命令有多于二个列,应该用逗号分开它们。

what

权力行使的等第。权限可以是大局,定数据库或一定表.

user

权力给予的顾客,由三个客商名和主机名组成,许八个同名客商从差异域点连接.缺省:mysql客户password

赋予顾客的口令(可选卡塔尔(英语:State of Qatar),假如你对客户并未有一点名identified by子句,该客商口令不改变.

用identified by时,口令字符串用改用口令的字面意思,grant将为您编码口令.

注:set password使用password()函数

with grant option

客商能够付与权限通过grant语句授权给别的客户(可选卡塔尔(英语:State of Qatar)

实例讲授:

grant all on db_book.* to huaying@koowo.com identified by “yeelion”   只好在本地连接

grant all on db_book.* to huaying@vpn.koowo.com identified by “yeeliong”  允许今后域连接

grant all on db_book.* to huaying@% identified by “yeelion”   允许从其余主机连接 注:”%”字符起通配符功效,与like情势相配的意思相仿。

grant all on db_book.* to huaying@%.koowo.com identified by “yeelion”;  允许huaying从koowo.com域的其它主机连接

grant all on db_book.* to huaying@192.168.1.189 identified by “yeelion”

grant all on db_book.* to huaying@192.168.1.% identified by “yeelion”

grant all on db_book.* to huaying@192.168.1.0/17 identified by “yeelion”

同意从单IP 段IP或一子网IP登录

注:偶尔 客户@IP 需用引号 如”huaying@192.168.1.0/17″

grant all on *.* to huaying@localhost identified by “yeelion” with grant option

增加顶级客商huaying 可在地头登入做其余操作.

grant reload on *.* to huaying@localhost identified by “yeelion” 只赋予reload权限

grant all on db_book to huaying@koowo.com indetified by “yeelion” 全体权力

grant select on db_book to huaying@% indetified by “yeelion” 只读权限

grant select,insert,delete,update on db_book to huaying@koowo.com indetified by “yeelion”

只有select,insert,delete,update的权限

grant select on db_book.storybook to huaying@localhost indetified by “yeelion” 只对表

grant update (name) on db_book.storybook to huaying@localhost 只对表的name列 密码不改变

grant update (id,name,author) on db_book.storybook to huaying@localhost 只对表的多列

grant all on book.* to “”@koowo.com 允许koowo.com域中的全体客商采纳库book

grant all on book.* to huaying@%.koowo.com indetified by “yeelion” with grant option

同意huaying对库book全体表的总指挥授权.

2.撤权并剔除客户

revoke的语法相仿于grant语句

to用from取代,没有indetifed by和with grant option子句. 如下:

revoke privileges (columns) on what from user

user:必须合作原本grant语句的你想撤权的客商的user部分。

privileges:不需协作,能够用grant语句授权,然后用revoke语句只收回部分权力。

revoke语句只删权限不删客商,裁撤了全部权限后user表中客户记录保留,客户仍是可以连绵不断服务器.

要统统除去叁个客户必须用一条delete语句显明从user表中去除顾客记录:

delete from user where user=”huaying”

flush privileges; 重载授权表

注:使用grant和revoke语句时,表自动重载,而你直接纠正授权表时不是.

实例:

1.创制数据库

CREATE DATABASE  `fypay` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

2.为开创的数据库扩充客商fypay

grant create,select,insert,update,delete,drop,alter on fypay.* to fypay@”%” identified by “testfpay”;

3.删除fypay用户

delete from user where user=”fypay”

drop user fypay@localhost

4.刷新数据库

flush privileges; 

本文由澳门新葡萄京娱乐网站发布于MySQL数据库,转载请注明出处:点名叁个数据库,顾客管理与权力调节

关键词: