购买阿里云ecs服务器后,很多人会选择自己搭建系统,有的人会选择云数据库,有的人会用自己搭建的数据库,但是自己搭建完成后,用navicat想要连接的自己的数据库时,却发生了这样的错误:
这是由于远程IP没有登录权限,root用户默认只能在localhost也就是只能在本机登录,需要设置允许其他IP登录权限。
解决方法:
在服务器内部登录数据库,然后执行:
grant
all
privileges
on
to
'root'@'%'
identified
by
'123456'
with
grant
option;
表示让所有的ip都能访问该数据库,并 *** 作数据库的任何对象。
其中:
第一个是指数据库
代表所有数据库
第二个指数据库对象
代表数据库中所有对象
'root'@'%'
root是制定要授权的数据库用户
%代表允许登录的IP
(如:1111)
123456是你的数据库密码
执行完毕后执行 flush
privileges;
刷新权限即可登录
那就不要用connect授权了,只授予用户连接数据库的权限:
GARANT CREATE SESSION TO USER_NAME;
connect 权限包括下面的权限:
ALTER SESSION --修改会话
CREATE CLUSTER --建立聚簇
CREATE DATABASE LINK --建立数据库链接
CREATE SEQUENCE --建立序列
CREATE SESSION --建立会话
CREATE SYNONYM --建立同义词
CREATE VIEW --建立视图
---
以上,希望对你有所帮助。
1、打开——“开始”,选择——“所有程序”,找打“Microsoft SQL Server 2005”单击打开,然后选择——“SQL Server Management Studio Express”单击打开。
2、打开后,这里有两种选择方式,“Windows身份验证”和“SQL Server身份验证”。
3、选择"SQL Server身份验证"创建表,登录以后,选中数据库,右键单击,选中——“新建数据库”。
4、在对应项内输入数据库的名字,以后数据库物理文件存储的位置。
5、在——“数据库”下拉菜单中,选中你创建的数据库以后,右键单击——“新建表”。
6、在右侧的显示栏中,输入你数据库中所有的字段。完成后选中上方的表名,右键单击——“另存为”进行数据库的保存就可以了。
你说的是不是当有人 *** 作一张表的时候,该表就不可以被其他人使用了?如果我理解的对的话,那么这项工作是SQL server 服务器DBMS自己解决的,不用你 *** 心了。SQL server这么强大,不会连这最基本的数据库完整性都保证不了的。。。
在SQL Server数据库中 主要是通过角色来继承相关的权限 但是 这个权限继承很容易造成权限上的冲突 如现在有个销售员账户SALE 有一个销售部门角色DE_SALES 其中销售部门角色DE_SALES具有查询所有客户信息 即CUSTOM表的权限 但是销售员账户SALE 其由于是为试用期的员工设置的临时帐户 所以其不能够查询CUSTOM表 但是 SALE 帐户其是属于销售部门这个角色 其会继承销售部门这个角色的所有访问权限 此时 SALE 帐户所属角色的权限跟自己帐户的权限就产生了冲突 遇到这种情况 SQL Server数据库该如何处理呢
在SQLServer数据库中 授予组或者角色的权限由该组或者角色的成员所继承 虽然某个用户可能在一个级别上授予或者废除权限 但如果这些权限与更高级的权限发生冲突的话 则可能会打破数据库管理员的权限设计思路 让某个用户意外的禁止或者允许访问某个数据库对象 为了避免因为数据库权限冲突所导致的一系列问题 SQLServer数据库提出了一些解决措施 虽然通过这些措施不能够完全避免权限之间的冲突 但是 至少让数据库管理员看到了解决问题的希望
招数一 明确拒绝
应用场景 现在数据库中有用户Landy 其属于销售员SALES角色 其中 销售员角色具有查询客户信息表Customs的权限 而由于某种原因 数据库管理员限制用户Landy访问数据库对象Customs表的权利 此时就会有对象访问权限上的冲突 此时 数据库管理员该如何才能够避免这种冲突呢
第一个招数就是学会使用拒绝 *** 作 在数据库中 拒绝权限始终优先 在任何级别(无论是用户或者角色)上的拒绝权限都拒绝该对象上的权限 无论该用户现有的权限是否已授予权限还是被废除权限 这听起来比较绕口 或许根据上面的例子来讲 大家更容易明白 如上例 若要解决上面的权限冲突问题 则我们只需要在用户Landy的权限设置中 拒绝其具有数据库对象表Customs表的Select权限 由于显示的拒绝其总被优先执行 所以即使其所属的角色具有表Customs的访问权限 但是其成员Landy由于被显示的拒绝 根据拒绝优先的选择 则其最终不会有数据库表Customs的访问权限
所以笔者所传授给大家的第一个招数就是要学会使用拒绝 *** 作 各位数据库管理员要牢记 在权限管理中 拒绝 *** 作总是被优先执行 另外还有一个极端的例子 可以说明这个问题 如果数据库管理员把Public进行设置 设置为拒绝权限 此时由于拒绝权限被优先执行 则数据会禁止任何用户访问能数据库对象 故拒绝权限一般往往用在用户级别上 可以实现对个别特殊用户的权限控制 而不用给他们设置独立的组 这让数据库权限管理更加的灵活
招数二 废除权限 可以让某些帐户恢复正常
应用情景 现在数据库中有用户Landy 其属于销售员SALES角色 其中 销售员角色具有查询客户信息表Customs的权限 而由于某种原因 数据库管理员限制用户Landy访问数据库对象Customs表的权利 此时 数据库管理员给Landy用户显示的拒绝访问Customs表的权利 但是 现在这个限制其访问客户表的原因已经消除 用户Landy 可以正常访问表Customs了 此时 该如何处理呢
此时 数据库管理员可以通过废除权限 *** 作来完成需求 废除权限只删除所废除级别(如用户 角色或者组)上的已授予权限或者已拒绝权限 而在另外级别上所授予或者拒绝的同一权限仍然适用 废除权限类似于拒绝权限 因为二者都是在同一级别上删除已经授予的权限 但是 废除权限是删除已经授予的权限 并不妨碍用户 组或者角色从更高级别继承已授予的权限 为此 如果废除用户查看表的权限 并不一定能够防止用户查看该表 这跟拒绝权限 *** 作就有本质的区别
举例来说 在上面这个例子中 Landy用户刚开始其被显示的拒绝访问表Customs 虽然其所属的角色具有访问表Customs的权限 但是因为拒绝优先 所以用户Landy最终不能过访问这个表 此时 若限制原因消除 则数据库管理员可以采取废除权限 *** 作 把Landy用户上的拒绝权限废除掉 因为废除权限只删除用户Landy上已拒绝访问这个表的权限 而不影响从角色SALES中继承统一权限 为此 用户Landy最终具有访问这个表Customs的权限 这就是废除权限 *** 作的本质
在实际工作中 废除权限 *** 作与拒绝权限 *** 作往往被用来处理一些特殊的帐户 如不少企业中 试用期员工其权限往往会受到限制 出于安全起见 企业不会让一些还在试用期的员工访问所有的数据 为此 就要对他们的权限进行限制 此时 就可以在这些用户帐户级别上显示的拒绝 实现部分访问限制的需求 当他们试用期过后 若试用合格的话 就可以把这些帐户的拒绝权限废除掉 如此的话 他们就可以正常继承他们所属角色或者组的权限 可见 拒绝权限与废除权限结合 可以让数据库全县的管理更加的统一 最终要的是 可以最大程度的避免因为权限冲突而导致的数据管理上的安全漏洞
另外 在实际配置中 需要注意一个问题 虽然废除权限具有废除拒绝权限的能力 但是 他只能够在一个级别上其作用 如上面这个例子中 另外还有一个T_SALES的角色 其权限设置中 显示的拒绝访问表Customs 此时 若用户Landy同时属于SALES角色和T_SALES角色 虽然通过废除权限废除了用户Landy级别上的拒绝访问表Customs的权限 但是 用户Landy所属的T_SALES角色中的拒绝权限仍然具有优先执行的权力 所以 最终这个用户仍然不能够访问表Customs 所以 通过废除对权限的拒绝可以删除已经拒绝的权限 但是 如果用户在其他组或者角色级别有其他拒绝权限的话 在该用户访问某个对象的权限仍然会被拒绝
招数三 授权 *** 作 让用户访问权限一目了然
应用情景 现在数据库中有用户Landy 其属于销售员SALES角色 其中 销售员角色具有查询客户信息表Customs的权限 而由于某种原因 数据库管理员限制用户Landy访问数据库对象Customs表的权利 此时 数据库管理员给Landy用户显示的拒绝访问Customs表的权利 但是 现在这个限制其访问客户表的原因已经消除 用户Landy 可以正常访问表Customs了 此时 该如何处理呢
此时 除了可以通过上面的废除权限 *** 作来处理 还可以通过授权 *** 作来完成 废除权限 *** 作有一个缺陷 就是数据库管理员要判断这个用户到底是否具有某个数据库对象的访问权限时 还需要去查看其所属的角色或者组中的权限设置 这会增加一定的工作量 而授权 *** 作则可以避免这种情况 授予权限删除所授予级别伤的已经拒绝权限或者已经废除权限 而在另一级别上所拒绝权限的同一权限仍然适用 但是 虽然在另一级别上所废除的同一权限仍然适用 但他不阻止用户访问该对象 也就是说 如果Sales角色可以访问表Customs 现在数据库管理员授予了用户Landy访问Customs表的权限 则用户最终具有访问表Customs的权限 但是 如果Sales角色显示的拒绝了表Customs的查询权限 此时即使显示的授予用户Landy表Customs的访问权限 则该用户仍然不能够访问表Customs 因为拒绝权限总是被优先执行 所以说 用户最终得到的是对象上所授予 拒绝或者废除权限的全部权限的并集 其中 拒绝权限具有最优先的权利
lishixinzhi/Article/program/SQLServer/201311/22467
以上就是关于阿里云如何取消数据库远程访问IP限制全部的内容,包括:阿里云如何取消数据库远程访问IP限制、oracle数据库用户授权问题如何限制用户访问的表或试图、如何设置SQLSERVER 用户只能访问数据库中某几个表呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)