12
返回列表 发新帖
楼主: ydwangcn

能不能设置跟踪对一个OWNER下所有对象的所有操作?

[复制链接]
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
11#
 楼主| 发表于 2005-3-18 13:40 | 只看该作者
最初由 ZALBB 发布
[B]做个create\alter\drop类型的TRIGGER就可以了。
我还以为你要地所有的i/d/u进行跟踪。 [/B]


是的.
这里是一篇有关数据库监控的很好文章.
http://blog.chinaunix.net/articl ... 2998&blogId=112

使用道具 举报

回复
论坛徽章:
22
2010新春纪念徽章
日期:2010-03-01 11:08:33马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:09
12#
发表于 2005-3-18 18:07 | 只看该作者

Re: Re: 能不能设置跟踪对一个OWNER下所有对象的所有操作?

最初由 rchsh 发布
[B]
一般情况下我觉得应该这样做,就是将表的所有者用户和对表的访问者用户分开,通过建立公共的同一词来解决权限问题,如:
建立用户A:就是表的所有者,在这个用户下DBA可以建立表,可以删除表,但是这个用户只能由DBA来维护管理,不能由开发人员或者应用来访问,可以通过密码来控制

然后建立用户B,这个用户只有connect的权限,开发人员在这个用户B中是不能自己建立表的,当然这个用户B中是不能建立对象的,然后通过下面的建立public同一词和授权的方式来使B用户透明的访问A下面的对象
connect a/passwd;
create table test_aa
(
)
CREATE public SYNONYM test_aa for test_aa;
grant select,update,delete,insert on test_aa to bb;

然后开发人员和应用环境可以用B用户来连接对A用户下面的表来进行DML操作就可以了,如果要修改表的结构可以用A用户连接来修改

这样只有DBA可以管理A下面的所有对象的DDl操作了 [/B]


使用公共同义词会有比较严重的性能问题, 还是少用为好啊

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表